./Ultimate.py --spec ../../sv-benchmarks/c/properties/termination.prp --file ../../sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version aa418289 Calling Ultimate with: java -Dosgi.configuration.area=/tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/config/AutomizerTermination.xml -i ../../sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i -s /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/config/svcomp-Termination-64bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(F end) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 64bit --witnessprinter.graph.data.programhash 938c367f37ddd298c829be75f27a69a6e9a1154b ............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................. Execution finished normally Writing output log to file Ultimate.log Result: TRUE --- Real Ultimate output --- This is Ultimate 0.1.23-aa41828 [2018-11-23 05:44:46,690 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 05:44:46,691 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 05:44:46,697 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 05:44:46,697 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 05:44:46,698 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 05:44:46,699 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 05:44:46,700 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 05:44:46,701 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 05:44:46,702 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 05:44:46,702 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 05:44:46,702 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 05:44:46,703 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 05:44:46,704 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 05:44:46,704 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 05:44:46,704 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 05:44:46,705 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 05:44:46,706 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 05:44:46,707 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 05:44:46,709 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 05:44:46,709 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 05:44:46,710 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 05:44:46,712 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 05:44:46,712 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 05:44:46,712 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 05:44:46,713 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 05:44:46,714 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 05:44:46,714 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 05:44:46,714 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 05:44:46,715 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 05:44:46,715 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 05:44:46,716 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 05:44:46,716 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 05:44:46,716 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 05:44:46,717 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 05:44:46,717 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 05:44:46,718 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/config/svcomp-Termination-64bit-Automizer_Default.epf [2018-11-23 05:44:46,725 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 05:44:46,725 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 05:44:46,726 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 05:44:46,727 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 05:44:46,727 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 05:44:46,727 INFO L131 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2018-11-23 05:44:46,727 INFO L133 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2018-11-23 05:44:46,727 INFO L133 SettingsManager]: * Use old map elimination=false [2018-11-23 05:44:46,727 INFO L133 SettingsManager]: * Use external solver (rank synthesis)=false [2018-11-23 05:44:46,727 INFO L133 SettingsManager]: * Use only trivial implications for array writes=true [2018-11-23 05:44:46,728 INFO L133 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2018-11-23 05:44:46,728 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 05:44:46,728 INFO L133 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2018-11-23 05:44:46,728 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 05:44:46,728 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 05:44:46,728 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2018-11-23 05:44:46,728 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2018-11-23 05:44:46,729 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2018-11-23 05:44:46,729 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 05:44:46,729 INFO L133 SettingsManager]: * Assume nondeterminstic values are in range=false [2018-11-23 05:44:46,729 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 05:44:46,729 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2018-11-23 05:44:46,729 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 05:44:46,729 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 05:44:46,729 INFO L133 SettingsManager]: * To the following directory=/home/matthias/ultimate/dump [2018-11-23 05:44:46,730 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 05:44:46,730 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 05:44:46,730 INFO L133 SettingsManager]: * Dump automata to the following directory=/home/matthias/ultimate/dump/auto [2018-11-23 05:44:46,731 INFO L131 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2018-11-23 05:44:46,731 INFO L133 SettingsManager]: * TransformationType=MODULO_NEIGHBOR Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(F end) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 938c367f37ddd298c829be75f27a69a6e9a1154b [2018-11-23 05:44:46,754 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 05:44:46,763 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 05:44:46,766 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 05:44:46,767 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 05:44:46,767 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 05:44:46,768 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/../../sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i [2018-11-23 05:44:46,814 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/data/f9e3c1f36/f8988ee2d13c485f90cb1745c04598f4/FLAGdac517da6 [2018-11-23 05:44:47,187 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 05:44:47,187 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i [2018-11-23 05:44:47,198 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/data/f9e3c1f36/f8988ee2d13c485f90cb1745c04598f4/FLAGdac517da6 [2018-11-23 05:44:47,568 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/data/f9e3c1f36/f8988ee2d13c485f90cb1745c04598f4 [2018-11-23 05:44:47,570 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 05:44:47,571 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 05:44:47,572 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 05:44:47,572 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 05:44:47,574 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 05:44:47,574 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,576 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@27b999c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47, skipping insertion in model container [2018-11-23 05:44:47,577 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,583 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 05:44:47,610 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 05:44:47,791 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 05:44:47,797 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 05:44:47,868 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 05:44:47,899 INFO L195 MainTranslator]: Completed translation [2018-11-23 05:44:47,899 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47 WrapperNode [2018-11-23 05:44:47,900 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 05:44:47,900 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 05:44:47,900 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 05:44:47,900 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 05:44:47,905 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,914 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,930 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 05:44:47,930 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 05:44:47,930 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 05:44:47,931 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 05:44:47,936 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,936 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,938 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,938 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,943 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,946 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,948 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (1/1) ... [2018-11-23 05:44:47,950 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 05:44:47,950 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 05:44:47,951 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 05:44:47,951 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 05:44:47,951 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-23 05:44:47,985 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-23 05:44:47,985 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-23 05:44:47,985 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-23 05:44:47,985 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-23 05:44:47,985 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 05:44:47,986 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 05:44:48,222 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 05:44:48,223 INFO L280 CfgBuilder]: Removed 16 assue(true) statements. [2018-11-23 05:44:48,223 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 05:44:48 BoogieIcfgContainer [2018-11-23 05:44:48,223 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 05:44:48,223 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2018-11-23 05:44:48,223 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2018-11-23 05:44:48,226 INFO L276 PluginConnector]: BuchiAutomizer initialized [2018-11-23 05:44:48,226 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-23 05:44:48,226 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 23.11 05:44:47" (1/3) ... [2018-11-23 05:44:48,227 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@90e8488 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.11 05:44:48, skipping insertion in model container [2018-11-23 05:44:48,227 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-23 05:44:48,227 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 05:44:47" (2/3) ... [2018-11-23 05:44:48,228 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@90e8488 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 23.11 05:44:48, skipping insertion in model container [2018-11-23 05:44:48,228 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-23 05:44:48,228 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 05:44:48" (3/3) ... [2018-11-23 05:44:48,229 INFO L375 chiAutomizerObserver]: Analyzing ICFG strstr_true-termination.c.i [2018-11-23 05:44:48,262 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 05:44:48,263 INFO L374 BuchiCegarLoop]: Interprodecural is true [2018-11-23 05:44:48,263 INFO L375 BuchiCegarLoop]: Hoare is false [2018-11-23 05:44:48,263 INFO L376 BuchiCegarLoop]: Compute interpolants for ForwardPredicates [2018-11-23 05:44:48,263 INFO L377 BuchiCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 05:44:48,263 INFO L378 BuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 05:44:48,263 INFO L379 BuchiCegarLoop]: Difference is false [2018-11-23 05:44:48,264 INFO L380 BuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 05:44:48,264 INFO L383 BuchiCegarLoop]: ======== Iteration 0==of CEGAR loop == BuchiCegarLoop======== [2018-11-23 05:44:48,274 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33 states. [2018-11-23 05:44:48,290 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 15 [2018-11-23 05:44:48,290 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:48,290 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:48,294 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2018-11-23 05:44:48,294 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:44:48,294 INFO L442 BuchiCegarLoop]: ======== Iteration 1============ [2018-11-23 05:44:48,294 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33 states. [2018-11-23 05:44:48,296 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 15 [2018-11-23 05:44:48,296 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:48,296 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:48,296 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2018-11-23 05:44:48,296 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:44:48,302 INFO L794 eck$LassoCheckResult]: Stem: 28#ULTIMATE.startENTRYtrue #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 9#L-1true havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 14#L541true assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 25#L545true assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 19#L508true assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 23#L509-4true [2018-11-23 05:44:48,302 INFO L796 eck$LassoCheckResult]: Loop: 23#L509-4true call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 29#L509-1true assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 34#L509-3true strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 23#L509-4true [2018-11-23 05:44:48,307 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:48,307 INFO L82 PathProgramCache]: Analyzing trace with hash 28695849, now seen corresponding path program 1 times [2018-11-23 05:44:48,309 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:48,310 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:48,342 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:48,342 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:48,342 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:48,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:48,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:48,409 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:48,410 INFO L82 PathProgramCache]: Analyzing trace with hash 50806, now seen corresponding path program 1 times [2018-11-23 05:44:48,410 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:48,410 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:48,411 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:48,411 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:48,411 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:48,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:48,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:48,421 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:48,421 INFO L82 PathProgramCache]: Analyzing trace with hash 179566670, now seen corresponding path program 1 times [2018-11-23 05:44:48,421 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:48,421 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:48,422 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:48,422 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:48,422 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:48,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:48,455 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:48,754 WARN L180 SmtUtils]: Spent 216.00 ms on a formula simplification. DAG size of input: 111 DAG size of output: 94 [2018-11-23 05:44:48,841 INFO L216 LassoAnalysis]: Preferences: [2018-11-23 05:44:48,842 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-23 05:44:48,842 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-23 05:44:48,842 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-23 05:44:48,843 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-23 05:44:48,843 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-23 05:44:48,843 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-23 05:44:48,843 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-23 05:44:48,843 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration1_Lasso [2018-11-23 05:44:48,843 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-23 05:44:48,844 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-11-23 05:44:48,866 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,035 WARN L180 SmtUtils]: Spent 116.00 ms on a formula simplification. DAG size of input: 72 DAG size of output: 68 [2018-11-23 05:44:49,083 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,085 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,086 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,087 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,095 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,097 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,099 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,103 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,104 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,111 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,112 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,114 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,115 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,116 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,117 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,118 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,120 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,121 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,123 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,124 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,125 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,127 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,128 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,129 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,131 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,132 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,133 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:49,416 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-11-23 05:44:49,420 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-11-23 05:44:49,421 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:49,422 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:49,423 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-23 05:44:49,423 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:49,423 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:49,428 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-23 05:44:49,428 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:49,441 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:49,442 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:49,442 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:49,443 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:49,443 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:49,443 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:49,447 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:49,447 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:49,484 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-23 05:44:49,515 INFO L443 ModelExtractionUtils]: Simplification made 7 calls to the SMT solver. [2018-11-23 05:44:49,515 INFO L444 ModelExtractionUtils]: 25 out of 31 variables were initially zero. Simplification set additionally 3 variables to zero. [2018-11-23 05:44:49,517 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-23 05:44:49,519 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-23 05:44:49,519 INFO L518 LassoAnalysis]: Proved termination. [2018-11-23 05:44:49,519 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select #length ULTIMATE.start_main_#t~malloc22.base)_1, ULTIMATE.start_strlen_~s.offset) = 1*v_rep(select #length ULTIMATE.start_main_#t~malloc22.base)_1 - 1*ULTIMATE.start_strlen_~s.offset Supporting invariants [] [2018-11-23 05:44:49,563 INFO L297 tatePredicateManager]: 8 out of 9 supporting invariants were superfluous and have been removed [2018-11-23 05:44:49,568 WARN L1272 BoogieBacktranslator]: unknown boogie variable #length [2018-11-23 05:44:49,586 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:49,601 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:49,605 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:49,615 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:49,616 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:49,627 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:44:49,636 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 2 loop predicates [2018-11-23 05:44:49,637 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 33 states. Second operand 4 states. [2018-11-23 05:44:49,695 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 33 states.. Second operand 4 states. Result 90 states and 130 transitions. Complement of second has 7 states. [2018-11-23 05:44:49,698 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 1 non-accepting loop states 1 accepting loop states [2018-11-23 05:44:49,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-23 05:44:49,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2018-11-23 05:44:49,702 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 85 transitions. Stem has 5 letters. Loop has 3 letters. [2018-11-23 05:44:49,703 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:49,703 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 85 transitions. Stem has 8 letters. Loop has 3 letters. [2018-11-23 05:44:49,703 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:49,703 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 85 transitions. Stem has 5 letters. Loop has 6 letters. [2018-11-23 05:44:49,703 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:49,704 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 90 states and 130 transitions. [2018-11-23 05:44:49,706 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 24 [2018-11-23 05:44:49,709 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 90 states to 47 states and 62 transitions. [2018-11-23 05:44:49,709 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 43 [2018-11-23 05:44:49,710 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 44 [2018-11-23 05:44:49,710 INFO L73 IsDeterministic]: Start isDeterministic. Operand 47 states and 62 transitions. [2018-11-23 05:44:49,710 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:49,710 INFO L705 BuchiCegarLoop]: Abstraction has 47 states and 62 transitions. [2018-11-23 05:44:49,720 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states and 62 transitions. [2018-11-23 05:44:49,727 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 47. [2018-11-23 05:44:49,727 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-23 05:44:49,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 62 transitions. [2018-11-23 05:44:49,729 INFO L728 BuchiCegarLoop]: Abstraction has 47 states and 62 transitions. [2018-11-23 05:44:49,729 INFO L608 BuchiCegarLoop]: Abstraction has 47 states and 62 transitions. [2018-11-23 05:44:49,729 INFO L442 BuchiCegarLoop]: ======== Iteration 2============ [2018-11-23 05:44:49,729 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states and 62 transitions. [2018-11-23 05:44:49,730 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 24 [2018-11-23 05:44:49,730 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:49,730 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:49,730 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:44:49,730 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:44:49,731 INFO L794 eck$LassoCheckResult]: Stem: 247#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 224#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 225#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 232#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 237#L508 assume strlen_~s.base == 0 && strlen_~s.offset == 0;strlen_#res := 0; 239#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 252#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 228#L509-10 [2018-11-23 05:44:49,731 INFO L796 eck$LassoCheckResult]: Loop: 228#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 229#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 251#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 228#L509-10 [2018-11-23 05:44:49,731 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:49,731 INFO L82 PathProgramCache]: Analyzing trace with hash 1806906284, now seen corresponding path program 1 times [2018-11-23 05:44:49,731 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:49,731 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:49,731 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:49,732 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:49,732 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:49,738 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:49,767 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:44:49,768 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 05:44:49,768 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 05:44:49,769 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-23 05:44:49,769 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:49,770 INFO L82 PathProgramCache]: Analyzing trace with hash 72652, now seen corresponding path program 1 times [2018-11-23 05:44:49,770 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:49,770 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:49,770 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:49,770 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:49,770 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:49,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:49,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:49,812 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 05:44:49,812 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 05:44:49,813 INFO L87 Difference]: Start difference. First operand 47 states and 62 transitions. cyclomatic complexity: 20 Second operand 3 states. [2018-11-23 05:44:49,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 05:44:49,822 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2018-11-23 05:44:49,823 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 05:44:49,823 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 29 states and 36 transitions. [2018-11-23 05:44:49,824 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 12 [2018-11-23 05:44:49,824 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 29 states to 29 states and 36 transitions. [2018-11-23 05:44:49,824 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 26 [2018-11-23 05:44:49,824 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 26 [2018-11-23 05:44:49,824 INFO L73 IsDeterministic]: Start isDeterministic. Operand 29 states and 36 transitions. [2018-11-23 05:44:49,825 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:49,825 INFO L705 BuchiCegarLoop]: Abstraction has 29 states and 36 transitions. [2018-11-23 05:44:49,825 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states and 36 transitions. [2018-11-23 05:44:49,826 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2018-11-23 05:44:49,826 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-11-23 05:44:49,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 36 transitions. [2018-11-23 05:44:49,826 INFO L728 BuchiCegarLoop]: Abstraction has 29 states and 36 transitions. [2018-11-23 05:44:49,826 INFO L608 BuchiCegarLoop]: Abstraction has 29 states and 36 transitions. [2018-11-23 05:44:49,827 INFO L442 BuchiCegarLoop]: ======== Iteration 3============ [2018-11-23 05:44:49,827 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 29 states and 36 transitions. [2018-11-23 05:44:49,827 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 12 [2018-11-23 05:44:49,827 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:49,827 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:49,828 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:44:49,828 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:44:49,828 INFO L794 eck$LassoCheckResult]: Stem: 324#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 302#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 303#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 311#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 318#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 319#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 321#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 323#L509-5 strlen_#res := strlen_~i~0; 308#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 309#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 305#L509-10 [2018-11-23 05:44:49,828 INFO L796 eck$LassoCheckResult]: Loop: 305#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 310#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 304#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 305#L509-10 [2018-11-23 05:44:49,828 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:49,828 INFO L82 PathProgramCache]: Analyzing trace with hash 764823385, now seen corresponding path program 1 times [2018-11-23 05:44:49,828 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:49,828 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:49,829 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:49,829 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:49,829 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:49,835 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:49,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:49,843 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:49,843 INFO L82 PathProgramCache]: Analyzing trace with hash 72652, now seen corresponding path program 2 times [2018-11-23 05:44:49,843 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:49,843 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:49,844 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:49,844 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:49,844 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:49,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:49,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:49,851 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:49,851 INFO L82 PathProgramCache]: Analyzing trace with hash 52000116, now seen corresponding path program 1 times [2018-11-23 05:44:49,851 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:49,851 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:49,852 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:49,852 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:44:49,852 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:49,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:49,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:50,133 WARN L180 SmtUtils]: Spent 208.00 ms on a formula simplification. DAG size of input: 141 DAG size of output: 113 [2018-11-23 05:44:50,228 INFO L216 LassoAnalysis]: Preferences: [2018-11-23 05:44:50,228 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-23 05:44:50,228 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-23 05:44:50,229 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-23 05:44:50,229 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-23 05:44:50,229 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-23 05:44:50,229 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-23 05:44:50,229 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-23 05:44:50,229 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration3_Lasso [2018-11-23 05:44:50,229 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-23 05:44:50,229 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-11-23 05:44:50,233 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,239 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,241 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,242 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,243 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,245 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,246 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,248 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,249 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,250 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,251 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,252 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,253 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,255 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,256 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,258 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,260 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,266 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,268 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,278 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,280 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,281 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,282 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,283 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,285 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,287 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,288 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,476 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:50,740 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-11-23 05:44:50,740 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-11-23 05:44:50,740 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,741 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,741 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,741 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,741 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,741 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,741 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,741 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,742 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,742 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,742 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,742 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,742 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,742 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,742 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,743 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,743 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,743 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,743 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,744 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,744 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,744 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,744 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,744 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,744 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,744 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,744 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,745 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,745 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,745 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,745 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,745 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,745 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,745 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,745 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,746 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,746 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,746 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,746 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,746 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,746 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,747 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:50,747 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:50,748 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,748 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,748 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,748 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,749 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,749 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,749 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,749 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,749 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,749 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,749 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,749 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,750 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,750 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,750 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,750 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:50,750 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:50,752 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,752 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,753 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,753 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,753 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,753 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,753 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,753 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,753 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,754 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,754 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,754 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,755 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,755 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,755 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,755 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,755 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,755 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,756 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,756 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,756 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,757 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,757 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,757 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,757 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,757 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,757 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,758 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,758 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,758 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,758 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,759 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,759 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,759 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,759 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,759 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,760 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,760 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,760 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,760 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,760 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,761 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,761 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,761 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,761 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,761 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,762 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,762 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,762 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,762 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,762 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,763 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,763 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,763 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,763 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,764 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,764 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,764 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,764 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,764 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,764 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,765 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,765 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,765 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,766 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,766 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,766 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,766 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,766 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,767 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:50,767 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:50,769 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,769 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,769 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,769 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,769 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,770 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,770 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,770 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,770 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,773 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,774 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,774 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,774 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,774 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,774 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,775 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,775 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,775 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,776 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,776 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,777 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,777 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,777 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,777 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,778 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:50,778 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:50,782 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,783 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,783 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,783 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,784 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,784 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,784 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,784 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,784 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,785 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,785 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,785 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,785 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,786 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,786 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,786 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,786 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,786 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,787 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,787 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,787 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,787 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,787 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,787 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,788 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,788 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,788 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,788 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,789 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,789 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,789 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,789 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,789 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,789 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,789 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,790 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,790 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,790 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,791 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,791 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,791 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,791 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,791 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,791 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,791 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,792 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,792 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,792 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,792 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,793 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,793 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,793 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,793 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,793 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,794 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,794 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,794 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,794 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,794 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,795 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,795 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,795 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,795 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,795 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,796 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,796 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,796 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:50,796 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,796 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,798 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,799 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:50,799 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:50,799 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,799 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,800 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,800 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,800 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,800 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,801 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:50,801 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:50,803 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,804 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,804 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,804 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-23 05:44:50,804 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,804 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,806 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-23 05:44:50,806 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:50,814 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,814 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,814 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,815 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,815 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,815 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,815 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:50,816 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:50,817 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:50,817 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:50,817 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:50,818 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:50,818 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:50,818 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:50,821 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:50,821 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:50,835 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-23 05:44:50,844 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2018-11-23 05:44:50,845 INFO L444 ModelExtractionUtils]: 44 out of 49 variables were initially zero. Simplification set additionally 2 variables to zero. [2018-11-23 05:44:50,845 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-23 05:44:50,846 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-23 05:44:50,846 INFO L518 LassoAnalysis]: Proved termination. [2018-11-23 05:44:50,846 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_strlen_~s.offset, v_rep(select #length ULTIMATE.start_main_#t~malloc20.base)_2) = -1*ULTIMATE.start_strlen_~s.offset + 1*v_rep(select #length ULTIMATE.start_main_#t~malloc20.base)_2 Supporting invariants [] [2018-11-23 05:44:50,910 INFO L297 tatePredicateManager]: 11 out of 12 supporting invariants were superfluous and have been removed [2018-11-23 05:44:50,911 WARN L1272 BoogieBacktranslator]: unknown boogie variable #length [2018-11-23 05:44:50,927 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:50,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:50,941 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:50,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:50,960 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:50,971 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:44:50,971 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.4 stem predicates 2 loop predicates [2018-11-23 05:44:50,972 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 29 states and 36 transitions. cyclomatic complexity: 10 Second operand 6 states. [2018-11-23 05:44:51,048 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 29 states and 36 transitions. cyclomatic complexity: 10. Second operand 6 states. Result 57 states and 72 transitions. Complement of second has 7 states. [2018-11-23 05:44:51,050 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 4 stem states 1 non-accepting loop states 1 accepting loop states [2018-11-23 05:44:51,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 05:44:51,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2018-11-23 05:44:51,051 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 48 transitions. Stem has 10 letters. Loop has 3 letters. [2018-11-23 05:44:51,051 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:51,051 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 48 transitions. Stem has 13 letters. Loop has 3 letters. [2018-11-23 05:44:51,051 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:51,051 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 48 transitions. Stem has 10 letters. Loop has 6 letters. [2018-11-23 05:44:51,051 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:51,051 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 57 states and 72 transitions. [2018-11-23 05:44:51,055 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2018-11-23 05:44:51,055 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 57 states to 43 states and 54 transitions. [2018-11-23 05:44:51,055 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 36 [2018-11-23 05:44:51,056 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 37 [2018-11-23 05:44:51,056 INFO L73 IsDeterministic]: Start isDeterministic. Operand 43 states and 54 transitions. [2018-11-23 05:44:51,056 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:51,056 INFO L705 BuchiCegarLoop]: Abstraction has 43 states and 54 transitions. [2018-11-23 05:44:51,056 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states and 54 transitions. [2018-11-23 05:44:51,057 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 31. [2018-11-23 05:44:51,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 05:44:51,058 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 39 transitions. [2018-11-23 05:44:51,058 INFO L728 BuchiCegarLoop]: Abstraction has 31 states and 39 transitions. [2018-11-23 05:44:51,058 INFO L608 BuchiCegarLoop]: Abstraction has 31 states and 39 transitions. [2018-11-23 05:44:51,058 INFO L442 BuchiCegarLoop]: ======== Iteration 4============ [2018-11-23 05:44:51,058 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 39 transitions. [2018-11-23 05:44:51,058 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 9 [2018-11-23 05:44:51,058 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:51,058 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:51,059 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:44:51,059 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-23 05:44:51,059 INFO L794 eck$LassoCheckResult]: Stem: 534#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 514#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 515#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 523#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 528#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 529#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 531#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 533#L509-5 strlen_#res := strlen_~i~0; 516#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 517#L508-2 assume strlen_~s.base == 0 && strlen_~s.offset == 0;strlen_#res := 0; 521#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 522#L529 assume !(0 == strstr_~nl~0 % 4294967296); 524#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 525#L531-3 [2018-11-23 05:44:51,059 INFO L796 eck$LassoCheckResult]: Loop: 525#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 512#L532 assume !strstr_#t~short17; 513#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 527#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 525#L531-3 [2018-11-23 05:44:51,059 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:51,059 INFO L82 PathProgramCache]: Analyzing trace with hash 51953446, now seen corresponding path program 1 times [2018-11-23 05:44:51,059 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:51,060 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:51,060 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,060 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:51,060 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:51,091 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:44:51,091 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 05:44:51,091 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 05:44:51,091 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-23 05:44:51,091 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:51,091 INFO L82 PathProgramCache]: Analyzing trace with hash 3227613, now seen corresponding path program 1 times [2018-11-23 05:44:51,091 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:51,091 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:51,092 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,092 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:51,092 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,097 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,174 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 05:44:51,175 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-23 05:44:51,175 INFO L87 Difference]: Start difference. First operand 31 states and 39 transitions. cyclomatic complexity: 11 Second operand 5 states. [2018-11-23 05:44:51,199 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 05:44:51,199 INFO L93 Difference]: Finished difference Result 31 states and 38 transitions. [2018-11-23 05:44:51,200 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 05:44:51,200 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 31 states and 38 transitions. [2018-11-23 05:44:51,201 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 9 [2018-11-23 05:44:51,201 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 31 states to 31 states and 38 transitions. [2018-11-23 05:44:51,201 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25 [2018-11-23 05:44:51,201 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2018-11-23 05:44:51,202 INFO L73 IsDeterministic]: Start isDeterministic. Operand 31 states and 38 transitions. [2018-11-23 05:44:51,202 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:51,202 INFO L705 BuchiCegarLoop]: Abstraction has 31 states and 38 transitions. [2018-11-23 05:44:51,202 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states and 38 transitions. [2018-11-23 05:44:51,203 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2018-11-23 05:44:51,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 05:44:51,204 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 38 transitions. [2018-11-23 05:44:51,204 INFO L728 BuchiCegarLoop]: Abstraction has 31 states and 38 transitions. [2018-11-23 05:44:51,204 INFO L608 BuchiCegarLoop]: Abstraction has 31 states and 38 transitions. [2018-11-23 05:44:51,204 INFO L442 BuchiCegarLoop]: ======== Iteration 5============ [2018-11-23 05:44:51,204 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 38 transitions. [2018-11-23 05:44:51,204 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 9 [2018-11-23 05:44:51,204 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:51,204 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:51,205 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:44:51,205 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-23 05:44:51,205 INFO L794 eck$LassoCheckResult]: Stem: 606#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 582#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 583#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 593#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 600#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 601#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 603#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 605#L509-5 strlen_#res := strlen_~i~0; 588#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 589#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 590#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 592#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 596#L509-11 strlen_#res := strlen_~i~0; 594#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 595#L529 assume !(0 == strstr_~nl~0 % 4294967296); 597#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 598#L531-3 [2018-11-23 05:44:51,205 INFO L796 eck$LassoCheckResult]: Loop: 598#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 586#L532 assume !strstr_#t~short17; 587#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 599#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 598#L531-3 [2018-11-23 05:44:51,205 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:51,205 INFO L82 PathProgramCache]: Analyzing trace with hash -1349410205, now seen corresponding path program 1 times [2018-11-23 05:44:51,206 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:51,206 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:51,206 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,206 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:51,206 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:51,242 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:44:51,242 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 05:44:51,243 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 05:44:51,243 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-23 05:44:51,243 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:51,243 INFO L82 PathProgramCache]: Analyzing trace with hash 3227613, now seen corresponding path program 2 times [2018-11-23 05:44:51,243 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:51,243 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:51,245 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,246 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:51,246 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,251 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,308 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 05:44:51,308 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-23 05:44:51,308 INFO L87 Difference]: Start difference. First operand 31 states and 38 transitions. cyclomatic complexity: 10 Second operand 5 states. [2018-11-23 05:44:51,349 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 05:44:51,349 INFO L93 Difference]: Finished difference Result 64 states and 74 transitions. [2018-11-23 05:44:51,349 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 05:44:51,349 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 64 states and 74 transitions. [2018-11-23 05:44:51,350 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2018-11-23 05:44:51,350 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 64 states to 47 states and 56 transitions. [2018-11-23 05:44:51,351 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 39 [2018-11-23 05:44:51,351 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 39 [2018-11-23 05:44:51,351 INFO L73 IsDeterministic]: Start isDeterministic. Operand 47 states and 56 transitions. [2018-11-23 05:44:51,351 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:51,351 INFO L705 BuchiCegarLoop]: Abstraction has 47 states and 56 transitions. [2018-11-23 05:44:51,351 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states and 56 transitions. [2018-11-23 05:44:51,352 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 31. [2018-11-23 05:44:51,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 05:44:51,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 37 transitions. [2018-11-23 05:44:51,353 INFO L728 BuchiCegarLoop]: Abstraction has 31 states and 37 transitions. [2018-11-23 05:44:51,353 INFO L608 BuchiCegarLoop]: Abstraction has 31 states and 37 transitions. [2018-11-23 05:44:51,353 INFO L442 BuchiCegarLoop]: ======== Iteration 6============ [2018-11-23 05:44:51,353 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 37 transitions. [2018-11-23 05:44:51,353 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 9 [2018-11-23 05:44:51,354 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:51,354 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:51,354 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:44:51,357 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-23 05:44:51,357 INFO L794 eck$LassoCheckResult]: Stem: 715#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 695#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 696#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 704#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 709#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 710#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 711#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 716#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 712#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 713#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 714#L509-5 strlen_#res := strlen_~i~0; 697#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 698#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 699#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 700#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 705#L509-11 strlen_#res := strlen_~i~0; 702#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 703#L529 assume !(0 == strstr_~nl~0 % 4294967296); 706#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 707#L531-3 [2018-11-23 05:44:51,358 INFO L796 eck$LassoCheckResult]: Loop: 707#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 693#L532 assume !strstr_#t~short17; 694#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 708#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 707#L531-3 [2018-11-23 05:44:51,358 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:51,358 INFO L82 PathProgramCache]: Analyzing trace with hash -1796108770, now seen corresponding path program 1 times [2018-11-23 05:44:51,358 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:51,358 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:51,359 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,359 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:44:51,359 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:51,484 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-23 05:44:51,484 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 05:44:51,484 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 05:44:51,511 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:51,526 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:51,527 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:51,552 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2018-11-23 05:44:51,568 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-23 05:44:51,568 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 12 [2018-11-23 05:44:51,569 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-23 05:44:51,569 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:51,570 INFO L82 PathProgramCache]: Analyzing trace with hash 3227613, now seen corresponding path program 3 times [2018-11-23 05:44:51,570 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:51,570 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:51,570 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,571 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:51,571 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,576 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,639 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-23 05:44:51,639 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=124, Unknown=0, NotChecked=0, Total=156 [2018-11-23 05:44:51,639 INFO L87 Difference]: Start difference. First operand 31 states and 37 transitions. cyclomatic complexity: 9 Second operand 13 states. [2018-11-23 05:44:51,804 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 05:44:51,804 INFO L93 Difference]: Finished difference Result 103 states and 121 transitions. [2018-11-23 05:44:51,805 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 05:44:51,805 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 103 states and 121 transitions. [2018-11-23 05:44:51,806 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 36 [2018-11-23 05:44:51,807 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 103 states to 93 states and 111 transitions. [2018-11-23 05:44:51,807 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 72 [2018-11-23 05:44:51,807 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 72 [2018-11-23 05:44:51,807 INFO L73 IsDeterministic]: Start isDeterministic. Operand 93 states and 111 transitions. [2018-11-23 05:44:51,808 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:51,808 INFO L705 BuchiCegarLoop]: Abstraction has 93 states and 111 transitions. [2018-11-23 05:44:51,808 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states and 111 transitions. [2018-11-23 05:44:51,809 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 31. [2018-11-23 05:44:51,810 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-23 05:44:51,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 36 transitions. [2018-11-23 05:44:51,810 INFO L728 BuchiCegarLoop]: Abstraction has 31 states and 36 transitions. [2018-11-23 05:44:51,810 INFO L608 BuchiCegarLoop]: Abstraction has 31 states and 36 transitions. [2018-11-23 05:44:51,810 INFO L442 BuchiCegarLoop]: ======== Iteration 7============ [2018-11-23 05:44:51,810 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 36 transitions. [2018-11-23 05:44:51,811 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 9 [2018-11-23 05:44:51,811 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:51,811 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:51,811 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:44:51,811 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-23 05:44:51,812 INFO L794 eck$LassoCheckResult]: Stem: 938#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 916#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 917#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 925#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 932#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 933#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 934#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 939#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 935#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 936#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 937#L509-5 strlen_#res := strlen_~i~0; 920#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 921#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 922#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 923#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 918#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 919#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 924#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 929#L509-11 strlen_#res := strlen_~i~0; 926#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 927#L529 assume !(0 == strstr_~nl~0 % 4294967296); 930#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 931#L531-3 [2018-11-23 05:44:51,812 INFO L796 eck$LassoCheckResult]: Loop: 931#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 914#L532 assume !strstr_#t~short17; 915#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 928#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 931#L531-3 [2018-11-23 05:44:51,812 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:51,812 INFO L82 PathProgramCache]: Analyzing trace with hash -1624521053, now seen corresponding path program 1 times [2018-11-23 05:44:51,812 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:51,812 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:51,813 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,813 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:44:51,813 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,849 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,853 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:51,854 INFO L82 PathProgramCache]: Analyzing trace with hash 3227613, now seen corresponding path program 4 times [2018-11-23 05:44:51,854 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:51,854 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:51,856 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,856 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:51,856 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,858 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,861 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:51,861 INFO L82 PathProgramCache]: Analyzing trace with hash 16049535, now seen corresponding path program 1 times [2018-11-23 05:44:51,861 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:51,861 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:51,862 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,862 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:44:51,862 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:51,874 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:51,883 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:52,356 WARN L180 SmtUtils]: Spent 397.00 ms on a formula simplification. DAG size of input: 205 DAG size of output: 156 [2018-11-23 05:44:52,452 INFO L216 LassoAnalysis]: Preferences: [2018-11-23 05:44:52,452 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-23 05:44:52,452 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-23 05:44:52,452 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-23 05:44:52,452 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-23 05:44:52,452 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-23 05:44:52,452 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-23 05:44:52,452 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-23 05:44:52,452 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration7_Lasso [2018-11-23 05:44:52,452 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-23 05:44:52,452 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-11-23 05:44:52,455 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,456 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,457 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,463 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,465 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,467 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,469 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,470 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,472 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,474 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,487 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,488 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,489 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,490 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,491 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,492 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,493 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,494 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,495 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,496 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,496 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,497 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,498 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,499 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:52,735 WARN L180 SmtUtils]: Spent 120.00 ms on a formula simplification. DAG size of input: 102 DAG size of output: 86 [2018-11-23 05:44:52,811 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:53,142 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-11-23 05:44:53,142 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-11-23 05:44:53,143 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,143 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,143 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,144 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,144 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,144 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,144 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,144 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,145 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,145 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,145 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,145 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,145 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,145 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,145 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,146 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,146 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,146 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,152 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,153 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,153 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,153 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,153 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,153 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,153 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,153 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,153 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,153 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,154 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,154 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,154 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,154 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,154 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:53,154 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:53,155 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,155 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,155 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,156 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,156 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,156 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,156 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,156 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,156 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,156 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,156 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,157 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,157 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,157 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,157 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,157 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,157 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,157 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,157 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,158 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,158 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,158 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,158 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,158 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,158 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,159 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,159 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,159 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,159 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,159 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,160 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,160 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,160 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,160 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,160 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,160 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,161 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,161 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,161 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,161 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,161 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,162 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,162 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,162 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,162 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,162 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,163 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,163 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,163 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,163 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,163 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,165 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:53,165 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:53,173 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,174 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,174 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,174 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,174 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,174 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,179 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:53,179 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:53,180 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,180 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,181 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,181 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,181 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,181 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,181 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,181 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,181 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,182 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,182 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,183 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,183 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,183 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,183 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,183 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,184 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,184 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,184 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,184 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,185 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,185 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,185 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,185 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,185 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,185 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,185 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,186 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,186 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,187 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,187 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,187 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,187 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,187 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,187 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,188 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,188 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,188 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,189 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,189 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,189 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,189 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,189 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:53,189 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:53,192 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,192 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,192 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,193 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,193 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,193 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,193 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,193 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,193 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,194 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,194 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,194 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,194 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,194 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,194 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,195 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,195 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,195 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,195 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,195 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,196 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,196 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,196 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,196 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,196 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,196 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,196 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,197 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,197 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,197 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,197 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,197 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,198 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,198 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,198 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,198 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,212 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,212 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,212 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,213 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,213 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,213 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,213 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,213 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,213 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,214 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,214 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,214 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,214 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,214 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,215 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,215 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,215 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,215 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,215 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,216 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,216 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,216 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:53,216 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,216 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,216 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,216 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:53,216 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:53,217 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,217 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,217 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,217 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,217 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,218 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,218 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:53,218 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:53,219 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,219 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,220 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,220 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,220 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,220 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,221 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:53,221 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:53,232 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:53,232 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:53,232 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:53,232 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:53,233 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:53,233 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:53,241 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:53,241 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:53,257 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-23 05:44:53,273 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2018-11-23 05:44:53,273 INFO L444 ModelExtractionUtils]: 48 out of 52 variables were initially zero. Simplification set additionally 1 variables to zero. [2018-11-23 05:44:53,273 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-23 05:44:53,274 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-23 05:44:53,274 INFO L518 LassoAnalysis]: Proved termination. [2018-11-23 05:44:53,274 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select #length ULTIMATE.start_main_~hay~0.base)_1, ULTIMATE.start_strstr_~haystack.offset) = 1*v_rep(select #length ULTIMATE.start_main_~hay~0.base)_1 - 1*ULTIMATE.start_strstr_~haystack.offset Supporting invariants [] [2018-11-23 05:44:53,371 INFO L297 tatePredicateManager]: 29 out of 31 supporting invariants were superfluous and have been removed [2018-11-23 05:44:53,375 WARN L1272 BoogieBacktranslator]: unknown boogie variable #length [2018-11-23 05:44:53,395 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:53,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:53,411 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:53,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:53,430 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:53,459 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:44:53,460 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.3 stem predicates 3 loop predicates [2018-11-23 05:44:53,460 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 31 states and 36 transitions. cyclomatic complexity: 8 Second operand 6 states. [2018-11-23 05:44:53,508 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 31 states and 36 transitions. cyclomatic complexity: 8. Second operand 6 states. Result 41 states and 51 transitions. Complement of second has 8 states. [2018-11-23 05:44:53,509 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 3 stem states 2 non-accepting loop states 1 accepting loop states [2018-11-23 05:44:53,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 05:44:53,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 33 transitions. [2018-11-23 05:44:53,509 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 33 transitions. Stem has 22 letters. Loop has 4 letters. [2018-11-23 05:44:53,509 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:53,510 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 33 transitions. Stem has 26 letters. Loop has 4 letters. [2018-11-23 05:44:53,510 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:53,510 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 33 transitions. Stem has 22 letters. Loop has 8 letters. [2018-11-23 05:44:53,510 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:53,510 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 41 states and 51 transitions. [2018-11-23 05:44:53,511 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-11-23 05:44:53,511 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 41 states to 38 states and 45 transitions. [2018-11-23 05:44:53,511 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 21 [2018-11-23 05:44:53,511 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 23 [2018-11-23 05:44:53,512 INFO L73 IsDeterministic]: Start isDeterministic. Operand 38 states and 45 transitions. [2018-11-23 05:44:53,512 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:53,512 INFO L705 BuchiCegarLoop]: Abstraction has 38 states and 45 transitions. [2018-11-23 05:44:53,512 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states and 45 transitions. [2018-11-23 05:44:53,513 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 37. [2018-11-23 05:44:53,513 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 37 states. [2018-11-23 05:44:53,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 44 transitions. [2018-11-23 05:44:53,514 INFO L728 BuchiCegarLoop]: Abstraction has 37 states and 44 transitions. [2018-11-23 05:44:53,514 INFO L608 BuchiCegarLoop]: Abstraction has 37 states and 44 transitions. [2018-11-23 05:44:53,514 INFO L442 BuchiCegarLoop]: ======== Iteration 8============ [2018-11-23 05:44:53,514 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 37 states and 44 transitions. [2018-11-23 05:44:53,514 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-11-23 05:44:53,514 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:53,514 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:53,515 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:44:53,515 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:44:53,515 INFO L794 eck$LassoCheckResult]: Stem: 1250#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1225#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 1226#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 1237#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1244#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1245#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1246#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1251#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1247#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1248#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1249#L509-5 strlen_#res := strlen_~i~0; 1232#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1233#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1234#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1235#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1227#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1228#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1236#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1240#L509-11 strlen_#res := strlen_~i~0; 1238#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 1239#L529 assume !(0 == strstr_~nl~0 % 4294967296); 1241#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 1242#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1229#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 1222#L517-3 [2018-11-23 05:44:53,515 INFO L796 eck$LassoCheckResult]: Loop: 1222#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1217#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 1218#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 1222#L517-3 [2018-11-23 05:44:53,515 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:53,516 INFO L82 PathProgramCache]: Analyzing trace with hash -2091601114, now seen corresponding path program 1 times [2018-11-23 05:44:53,516 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:53,516 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:53,516 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:53,516 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:53,516 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:53,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:53,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:53,538 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:53,538 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 1 times [2018-11-23 05:44:53,538 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:53,538 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:53,539 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:53,539 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:53,539 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:53,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:53,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:53,547 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:53,548 INFO L82 PathProgramCache]: Analyzing trace with hash 496824785, now seen corresponding path program 1 times [2018-11-23 05:44:53,548 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:53,548 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:53,548 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:53,548 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:53,548 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:53,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:53,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:54,330 WARN L180 SmtUtils]: Spent 690.00 ms on a formula simplification. DAG size of input: 264 DAG size of output: 194 [2018-11-23 05:44:54,500 WARN L180 SmtUtils]: Spent 167.00 ms on a formula simplification that was a NOOP. DAG size: 145 [2018-11-23 05:44:54,502 INFO L216 LassoAnalysis]: Preferences: [2018-11-23 05:44:54,502 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-23 05:44:54,502 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-23 05:44:54,503 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-23 05:44:54,503 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-23 05:44:54,503 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-23 05:44:54,503 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-23 05:44:54,503 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-23 05:44:54,503 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration8_Lasso [2018-11-23 05:44:54,503 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-23 05:44:54,503 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-11-23 05:44:54,507 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,509 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,511 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,513 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,515 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,516 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,518 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,519 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,520 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,521 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,522 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,523 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,524 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,525 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,526 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,527 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:54,972 WARN L180 SmtUtils]: Spent 233.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 117 [2018-11-23 05:44:55,102 WARN L180 SmtUtils]: Spent 104.00 ms on a formula simplification. DAG size of input: 88 DAG size of output: 74 [2018-11-23 05:44:55,103 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,112 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,113 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,119 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,120 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,121 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,123 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,124 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,127 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,128 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,131 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,132 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,132 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,134 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,134 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:44:55,684 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-11-23 05:44:55,684 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-11-23 05:44:55,685 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,685 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,685 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,685 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,685 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,685 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,685 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,685 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,686 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,686 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,686 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,686 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,687 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,687 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,687 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,687 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,687 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,687 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,687 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,688 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,688 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,688 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,688 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,688 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,688 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,688 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,688 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,689 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,689 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,689 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,689 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,689 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,689 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,689 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,689 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,689 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,690 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,690 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,690 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,690 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,690 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,690 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,690 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,690 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,690 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,691 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,691 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,691 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,691 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,691 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,692 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:55,692 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,693 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,693 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,694 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,694 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,694 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,694 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,694 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,694 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,694 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,695 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,695 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,695 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,695 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,695 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,695 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,695 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,696 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,696 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,696 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,697 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,697 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,697 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,697 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,697 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,697 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,697 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,698 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,698 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,698 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,698 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,699 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,699 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,699 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,699 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,699 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,699 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,699 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,700 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,700 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,700 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,700 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,700 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,700 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,700 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,700 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,701 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,701 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,701 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,701 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,702 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,702 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,702 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,702 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,702 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,702 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,703 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,703 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,703 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,703 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,703 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,704 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:55,704 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,705 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,705 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,706 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,706 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,706 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,706 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,706 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,706 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,706 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,707 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,707 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,707 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,707 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:44:55,707 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,707 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,708 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,708 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:44:55,708 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:44:55,708 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,708 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,709 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,709 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,709 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,709 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,709 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:55,710 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,710 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,711 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,711 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,711 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,711 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,711 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,712 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:55,712 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,713 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,713 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,713 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,713 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,713 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,714 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,714 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:55,714 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,715 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,715 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,716 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,716 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,716 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,716 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,717 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:55,717 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,718 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,718 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,718 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,718 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-23 05:44:55,719 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,719 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,720 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-23 05:44:55,720 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,728 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,728 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,729 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,729 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,729 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,729 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,729 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:55,729 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,730 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,731 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,731 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,731 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-23 05:44:55,731 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,731 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,733 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-23 05:44:55,733 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,741 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,741 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,741 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,742 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,742 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,742 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,742 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:55,743 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,745 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:44:55,746 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:44:55,746 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:44:55,746 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:44:55,746 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:44:55,747 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:44:55,750 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:44:55,750 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:44:55,771 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-23 05:44:55,824 INFO L443 ModelExtractionUtils]: Simplification made 8 calls to the SMT solver. [2018-11-23 05:44:55,824 INFO L444 ModelExtractionUtils]: 59 out of 67 variables were initially zero. Simplification set additionally 5 variables to zero. [2018-11-23 05:44:55,825 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-23 05:44:55,825 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-23 05:44:55,825 INFO L518 LassoAnalysis]: Proved termination. [2018-11-23 05:44:55,825 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select #length ULTIMATE.start_main_~hay~0.base)_2, ULTIMATE.start_memcmp_~d~0.offset) = 1*v_rep(select #length ULTIMATE.start_main_~hay~0.base)_2 - 1*ULTIMATE.start_memcmp_~d~0.offset Supporting invariants [] [2018-11-23 05:44:55,980 INFO L297 tatePredicateManager]: 42 out of 43 supporting invariants were superfluous and have been removed [2018-11-23 05:44:55,982 WARN L1272 BoogieBacktranslator]: unknown boogie variable #length [2018-11-23 05:44:55,994 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:56,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:56,017 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:56,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:56,030 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:56,041 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:44:56,041 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 2 loop predicates [2018-11-23 05:44:56,041 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 37 states and 44 transitions. cyclomatic complexity: 11 Second operand 5 states. [2018-11-23 05:44:56,077 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 37 states and 44 transitions. cyclomatic complexity: 11. Second operand 5 states. Result 84 states and 102 transitions. Complement of second has 8 states. [2018-11-23 05:44:56,078 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 2 non-accepting loop states 1 accepting loop states [2018-11-23 05:44:56,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-23 05:44:56,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2018-11-23 05:44:56,078 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 41 transitions. Stem has 24 letters. Loop has 3 letters. [2018-11-23 05:44:56,078 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:56,078 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 41 transitions. Stem has 27 letters. Loop has 3 letters. [2018-11-23 05:44:56,079 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:56,079 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 41 transitions. Stem has 24 letters. Loop has 6 letters. [2018-11-23 05:44:56,079 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:44:56,079 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 84 states and 102 transitions. [2018-11-23 05:44:56,080 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-11-23 05:44:56,082 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 84 states to 61 states and 74 transitions. [2018-11-23 05:44:56,082 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 26 [2018-11-23 05:44:56,082 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 26 [2018-11-23 05:44:56,082 INFO L73 IsDeterministic]: Start isDeterministic. Operand 61 states and 74 transitions. [2018-11-23 05:44:56,082 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:56,082 INFO L705 BuchiCegarLoop]: Abstraction has 61 states and 74 transitions. [2018-11-23 05:44:56,082 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states and 74 transitions. [2018-11-23 05:44:56,085 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 46. [2018-11-23 05:44:56,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 46 states. [2018-11-23 05:44:56,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 55 transitions. [2018-11-23 05:44:56,085 INFO L728 BuchiCegarLoop]: Abstraction has 46 states and 55 transitions. [2018-11-23 05:44:56,085 INFO L608 BuchiCegarLoop]: Abstraction has 46 states and 55 transitions. [2018-11-23 05:44:56,085 INFO L442 BuchiCegarLoop]: ======== Iteration 9============ [2018-11-23 05:44:56,086 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 46 states and 55 transitions. [2018-11-23 05:44:56,086 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-11-23 05:44:56,086 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:56,086 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:56,087 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [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, 1, 1, 1] [2018-11-23 05:44:56,087 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:44:56,087 INFO L794 eck$LassoCheckResult]: Stem: 1659#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1638#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 1639#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 1647#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1653#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1654#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1655#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1660#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1656#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1657#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1658#L509-5 strlen_#res := strlen_~i~0; 1640#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1641#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1642#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1643#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1632#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1633#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1644#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1648#L509-11 strlen_#res := strlen_~i~0; 1645#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 1646#L529 assume !(0 == strstr_~nl~0 % 4294967296); 1649#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 1650#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1635#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 1637#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1665#L517-1 assume !(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6; 1630#L517-4 memcmp_#res := 0; 1631#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 1651#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 1652#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 1662#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1634#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 1627#L517-3 [2018-11-23 05:44:56,087 INFO L796 eck$LassoCheckResult]: Loop: 1627#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1623#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 1624#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 1627#L517-3 [2018-11-23 05:44:56,087 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:56,087 INFO L82 PathProgramCache]: Analyzing trace with hash 1259680368, now seen corresponding path program 1 times [2018-11-23 05:44:56,087 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:56,088 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:56,088 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:56,088 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:56,088 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:56,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:56,114 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 05:44:56,115 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 05:44:56,115 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 05:44:56,115 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-23 05:44:56,115 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:56,115 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 2 times [2018-11-23 05:44:56,115 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:56,115 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:56,116 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:56,116 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:56,116 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:56,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:56,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:56,200 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 05:44:56,201 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-23 05:44:56,201 INFO L87 Difference]: Start difference. First operand 46 states and 55 transitions. cyclomatic complexity: 15 Second operand 4 states. [2018-11-23 05:44:56,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 05:44:56,219 INFO L93 Difference]: Finished difference Result 48 states and 56 transitions. [2018-11-23 05:44:56,220 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 05:44:56,220 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 48 states and 56 transitions. [2018-11-23 05:44:56,221 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-11-23 05:44:56,221 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 48 states to 45 states and 52 transitions. [2018-11-23 05:44:56,221 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2018-11-23 05:44:56,221 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22 [2018-11-23 05:44:56,221 INFO L73 IsDeterministic]: Start isDeterministic. Operand 45 states and 52 transitions. [2018-11-23 05:44:56,221 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:56,221 INFO L705 BuchiCegarLoop]: Abstraction has 45 states and 52 transitions. [2018-11-23 05:44:56,225 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states and 52 transitions. [2018-11-23 05:44:56,227 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 45. [2018-11-23 05:44:56,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 45 states. [2018-11-23 05:44:56,228 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 52 transitions. [2018-11-23 05:44:56,228 INFO L728 BuchiCegarLoop]: Abstraction has 45 states and 52 transitions. [2018-11-23 05:44:56,228 INFO L608 BuchiCegarLoop]: Abstraction has 45 states and 52 transitions. [2018-11-23 05:44:56,228 INFO L442 BuchiCegarLoop]: ======== Iteration 10============ [2018-11-23 05:44:56,228 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 45 states and 52 transitions. [2018-11-23 05:44:56,228 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-11-23 05:44:56,228 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:56,228 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:56,229 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [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, 1, 1, 1] [2018-11-23 05:44:56,229 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:44:56,229 INFO L794 eck$LassoCheckResult]: Stem: 1759#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1733#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 1734#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 1745#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1752#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1753#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1754#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1760#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1755#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1756#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1757#L509-5 strlen_#res := strlen_~i~0; 1740#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1741#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1742#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1743#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1735#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1736#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1744#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1748#L509-11 strlen_#res := strlen_~i~0; 1746#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 1747#L529 assume !(0 == strstr_~nl~0 % 4294967296); 1749#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 1750#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1766#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 1764#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1728#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 1729#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 1758#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 1739#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 1751#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 1762#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1737#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 1730#L517-3 [2018-11-23 05:44:56,229 INFO L796 eck$LassoCheckResult]: Loop: 1730#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1726#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 1727#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 1730#L517-3 [2018-11-23 05:44:56,229 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:56,230 INFO L82 PathProgramCache]: Analyzing trace with hash -1432054472, now seen corresponding path program 1 times [2018-11-23 05:44:56,230 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:56,230 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:56,230 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:56,230 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:44:56,230 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:56,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:56,356 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:44:56,357 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 05:44:56,357 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 05:44:56,373 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:56,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:56,406 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:56,422 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 11 [2018-11-23 05:44:56,424 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 10 [2018-11-23 05:44:56,424 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 05:44:56,426 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 05:44:56,428 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 05:44:56,428 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:14, output treesize:10 [2018-11-23 05:44:56,604 INFO L478 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 39 treesize of output 37 [2018-11-23 05:44:56,617 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 33 treesize of output 31 [2018-11-23 05:44:56,617 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 2 xjuncts. [2018-11-23 05:44:56,653 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 29 treesize of output 35 [2018-11-23 05:44:56,654 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 4 xjuncts. [2018-11-23 05:44:56,677 INFO L267 ElimStorePlain]: Start of recursive call 2: 3 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 05:44:56,679 INFO L267 ElimStorePlain]: Start of recursive call 1: 6 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-23 05:44:56,679 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 7 variables, input treesize:39, output treesize:3 [2018-11-23 05:44:56,700 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 05:44:56,724 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-23 05:44:56,724 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [12] total 16 [2018-11-23 05:44:56,724 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-23 05:44:56,724 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:56,724 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 3 times [2018-11-23 05:44:56,725 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:56,725 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:56,725 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:56,725 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:56,725 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:56,728 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:56,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:56,823 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-23 05:44:56,823 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=208, Unknown=0, NotChecked=0, Total=240 [2018-11-23 05:44:56,823 INFO L87 Difference]: Start difference. First operand 45 states and 52 transitions. cyclomatic complexity: 13 Second operand 16 states. [2018-11-23 05:44:57,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 05:44:57,749 INFO L93 Difference]: Finished difference Result 182 states and 203 transitions. [2018-11-23 05:44:57,749 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2018-11-23 05:44:57,749 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 182 states and 203 transitions. [2018-11-23 05:44:57,750 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2018-11-23 05:44:57,750 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 182 states to 151 states and 171 transitions. [2018-11-23 05:44:57,751 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 58 [2018-11-23 05:44:57,751 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 58 [2018-11-23 05:44:57,751 INFO L73 IsDeterministic]: Start isDeterministic. Operand 151 states and 171 transitions. [2018-11-23 05:44:57,751 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:57,751 INFO L705 BuchiCegarLoop]: Abstraction has 151 states and 171 transitions. [2018-11-23 05:44:57,751 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 151 states and 171 transitions. [2018-11-23 05:44:57,754 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 151 to 60. [2018-11-23 05:44:57,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 60 states. [2018-11-23 05:44:57,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 68 transitions. [2018-11-23 05:44:57,754 INFO L728 BuchiCegarLoop]: Abstraction has 60 states and 68 transitions. [2018-11-23 05:44:57,754 INFO L608 BuchiCegarLoop]: Abstraction has 60 states and 68 transitions. [2018-11-23 05:44:57,754 INFO L442 BuchiCegarLoop]: ======== Iteration 11============ [2018-11-23 05:44:57,755 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 60 states and 68 transitions. [2018-11-23 05:44:57,755 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-11-23 05:44:57,755 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:57,755 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:57,756 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:44:57,756 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:44:57,756 INFO L794 eck$LassoCheckResult]: Stem: 2154#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 2125#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 2126#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 2134#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 2142#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2143#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2146#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2157#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2147#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2148#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2163#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2164#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2155#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2156#L509-5 strlen_#res := strlen_~i~0; 2129#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 2130#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2131#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2132#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2127#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2128#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2152#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2139#L509-11 strlen_#res := strlen_~i~0; 2135#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 2136#L529 assume !(0 == strstr_~nl~0 % 4294967296); 2140#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 2141#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2161#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 2120#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2117#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2118#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 2173#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2172#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2167#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 2153#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 2123#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 2166#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 2165#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2121#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 2119#L517-3 [2018-11-23 05:44:57,756 INFO L796 eck$LassoCheckResult]: Loop: 2119#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2115#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2116#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 2119#L517-3 [2018-11-23 05:44:57,756 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:57,756 INFO L82 PathProgramCache]: Analyzing trace with hash 1690748232, now seen corresponding path program 1 times [2018-11-23 05:44:57,756 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:57,757 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:57,757 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:57,757 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:44:57,757 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:57,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:57,863 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 1 proven. 9 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-23 05:44:57,863 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 05:44:57,863 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 05:44:57,870 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:57,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:57,901 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:57,922 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 11 [2018-11-23 05:44:57,923 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 10 [2018-11-23 05:44:57,923 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-23 05:44:57,925 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-23 05:44:57,929 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-11-23 05:44:57,930 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:24, output treesize:20 [2018-11-23 05:44:58,143 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 05:44:58,159 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 05:44:58,159 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11] total 22 [2018-11-23 05:44:58,159 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-23 05:44:58,159 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:58,159 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 4 times [2018-11-23 05:44:58,159 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:58,159 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:58,160 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:58,160 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:44:58,160 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:58,162 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:58,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:58,222 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-23 05:44:58,223 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=415, Unknown=0, NotChecked=0, Total=462 [2018-11-23 05:44:58,223 INFO L87 Difference]: Start difference. First operand 60 states and 68 transitions. cyclomatic complexity: 14 Second operand 22 states. [2018-11-23 05:44:59,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 05:44:59,522 INFO L93 Difference]: Finished difference Result 284 states and 327 transitions. [2018-11-23 05:44:59,522 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 46 states. [2018-11-23 05:44:59,522 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 284 states and 327 transitions. [2018-11-23 05:44:59,523 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 15 [2018-11-23 05:44:59,524 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 284 states to 277 states and 320 transitions. [2018-11-23 05:44:59,524 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 76 [2018-11-23 05:44:59,524 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 76 [2018-11-23 05:44:59,524 INFO L73 IsDeterministic]: Start isDeterministic. Operand 277 states and 320 transitions. [2018-11-23 05:44:59,524 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:59,524 INFO L705 BuchiCegarLoop]: Abstraction has 277 states and 320 transitions. [2018-11-23 05:44:59,524 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 277 states and 320 transitions. [2018-11-23 05:44:59,527 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 277 to 88. [2018-11-23 05:44:59,528 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 88 states. [2018-11-23 05:44:59,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 100 transitions. [2018-11-23 05:44:59,528 INFO L728 BuchiCegarLoop]: Abstraction has 88 states and 100 transitions. [2018-11-23 05:44:59,528 INFO L608 BuchiCegarLoop]: Abstraction has 88 states and 100 transitions. [2018-11-23 05:44:59,528 INFO L442 BuchiCegarLoop]: ======== Iteration 12============ [2018-11-23 05:44:59,529 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 88 states and 100 transitions. [2018-11-23 05:44:59,529 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-11-23 05:44:59,529 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:59,529 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:59,530 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:44:59,530 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:44:59,530 INFO L794 eck$LassoCheckResult]: Stem: 2718#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 2690#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 2691#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 2700#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 2708#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2709#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2711#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2719#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2735#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2714#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2715#L509-5 strlen_#res := strlen_~i~0; 2694#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 2695#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2710#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2728#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2727#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2698#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2699#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2692#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2693#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2716#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2705#L509-11 strlen_#res := strlen_~i~0; 2701#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 2702#L529 assume !(0 == strstr_~nl~0 % 4294967296); 2706#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 2707#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2722#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 2686#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2683#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2684#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 2721#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2760#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2737#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 2717#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 2689#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 2725#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 2724#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2687#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 2685#L517-3 [2018-11-23 05:44:59,530 INFO L796 eck$LassoCheckResult]: Loop: 2685#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2681#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2682#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 2685#L517-3 [2018-11-23 05:44:59,530 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:59,531 INFO L82 PathProgramCache]: Analyzing trace with hash -2138077336, now seen corresponding path program 2 times [2018-11-23 05:44:59,531 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:59,531 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:59,531 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:59,531 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:44:59,531 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:59,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:44:59,615 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 3 proven. 4 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 05:44:59,615 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 05:44:59,615 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 05:44:59,634 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-23 05:44:59,678 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-23 05:44:59,678 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 05:44:59,681 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:44:59,700 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 3 proven. 4 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-23 05:44:59,726 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 05:44:59,727 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 10 [2018-11-23 05:44:59,727 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-23 05:44:59,727 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:59,727 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 5 times [2018-11-23 05:44:59,727 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:59,727 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:59,731 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:59,731 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:44:59,732 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:59,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:59,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:44:59,803 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-11-23 05:44:59,803 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2018-11-23 05:44:59,803 INFO L87 Difference]: Start difference. First operand 88 states and 100 transitions. cyclomatic complexity: 19 Second operand 10 states. [2018-11-23 05:44:59,927 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 05:44:59,928 INFO L93 Difference]: Finished difference Result 143 states and 161 transitions. [2018-11-23 05:44:59,929 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 05:44:59,930 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 143 states and 161 transitions. [2018-11-23 05:44:59,931 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2018-11-23 05:44:59,931 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 143 states to 115 states and 131 transitions. [2018-11-23 05:44:59,931 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 38 [2018-11-23 05:44:59,931 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 38 [2018-11-23 05:44:59,932 INFO L73 IsDeterministic]: Start isDeterministic. Operand 115 states and 131 transitions. [2018-11-23 05:44:59,932 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:44:59,932 INFO L705 BuchiCegarLoop]: Abstraction has 115 states and 131 transitions. [2018-11-23 05:44:59,932 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states and 131 transitions. [2018-11-23 05:44:59,934 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 88. [2018-11-23 05:44:59,934 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 88 states. [2018-11-23 05:44:59,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 99 transitions. [2018-11-23 05:44:59,935 INFO L728 BuchiCegarLoop]: Abstraction has 88 states and 99 transitions. [2018-11-23 05:44:59,935 INFO L608 BuchiCegarLoop]: Abstraction has 88 states and 99 transitions. [2018-11-23 05:44:59,935 INFO L442 BuchiCegarLoop]: ======== Iteration 13============ [2018-11-23 05:44:59,935 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 88 states and 99 transitions. [2018-11-23 05:44:59,936 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-11-23 05:44:59,936 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:44:59,936 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:44:59,936 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:44:59,936 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:44:59,937 INFO L794 eck$LassoCheckResult]: Stem: 3088#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 3054#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 3055#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 3066#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 3074#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3075#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3078#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3102#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3079#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3080#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3111#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3103#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3104#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3081#L509-5 strlen_#res := strlen_~i~0; 3082#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 3076#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3077#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3110#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3056#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3057#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3065#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3085#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3106#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3107#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3069#L509-11 strlen_#res := strlen_~i~0; 3070#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 3093#L529 assume !(0 == strstr_~nl~0 % 4294967296); 3094#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 3098#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3099#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 3053#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3050#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3051#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3097#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3130#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3114#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 3115#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 3116#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 3113#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 3112#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3058#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 3052#L517-3 [2018-11-23 05:44:59,937 INFO L796 eck$LassoCheckResult]: Loop: 3052#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3048#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3049#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3052#L517-3 [2018-11-23 05:44:59,937 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:44:59,937 INFO L82 PathProgramCache]: Analyzing trace with hash 1050158307, now seen corresponding path program 3 times [2018-11-23 05:44:59,937 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:44:59,937 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:44:59,938 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:59,938 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:44:59,938 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:44:59,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:45:00,067 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 1 proven. 15 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-11-23 05:45:00,067 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 05:45:00,068 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_6daeb023-a194-4ed7-b3ba-7e2d56023695/bin-2019/uautomizer/z3 Starting monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 05:45:00,075 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-23 05:45:00,128 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2018-11-23 05:45:00,128 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-23 05:45:00,133 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:45:00,220 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 1 proven. 15 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-11-23 05:45:00,235 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-23 05:45:00,235 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 19 [2018-11-23 05:45:00,235 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-23 05:45:00,236 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:45:00,236 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 6 times [2018-11-23 05:45:00,236 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:45:00,236 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:45:00,236 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:45:00,236 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:45:00,237 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:45:00,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:45:00,241 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:45:00,297 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-23 05:45:00,297 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=293, Unknown=0, NotChecked=0, Total=342 [2018-11-23 05:45:00,297 INFO L87 Difference]: Start difference. First operand 88 states and 99 transitions. cyclomatic complexity: 18 Second operand 19 states. [2018-11-23 05:45:00,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 05:45:00,457 INFO L93 Difference]: Finished difference Result 211 states and 240 transitions. [2018-11-23 05:45:00,457 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-23 05:45:00,457 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 211 states and 240 transitions. [2018-11-23 05:45:00,458 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 12 [2018-11-23 05:45:00,459 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 211 states to 190 states and 218 transitions. [2018-11-23 05:45:00,460 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 60 [2018-11-23 05:45:00,460 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 60 [2018-11-23 05:45:00,460 INFO L73 IsDeterministic]: Start isDeterministic. Operand 190 states and 218 transitions. [2018-11-23 05:45:00,460 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-23 05:45:00,460 INFO L705 BuchiCegarLoop]: Abstraction has 190 states and 218 transitions. [2018-11-23 05:45:00,460 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 190 states and 218 transitions. [2018-11-23 05:45:00,465 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 190 to 91. [2018-11-23 05:45:00,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 91 states. [2018-11-23 05:45:00,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 102 transitions. [2018-11-23 05:45:00,467 INFO L728 BuchiCegarLoop]: Abstraction has 91 states and 102 transitions. [2018-11-23 05:45:00,467 INFO L608 BuchiCegarLoop]: Abstraction has 91 states and 102 transitions. [2018-11-23 05:45:00,467 INFO L442 BuchiCegarLoop]: ======== Iteration 14============ [2018-11-23 05:45:00,467 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 91 states and 102 transitions. [2018-11-23 05:45:00,468 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-11-23 05:45:00,468 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-23 05:45:00,468 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-23 05:45:00,469 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 05:45:00,469 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-23 05:45:00,469 INFO L794 eck$LassoCheckResult]: Stem: 3538#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 3510#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 3511#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 3520#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 3526#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3527#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3530#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3548#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3531#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3532#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3551#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3552#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3539#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3540#L509-5 strlen_#res := strlen_~i~0; 3512#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 3513#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3514#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3515#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3505#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3506#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3559#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3560#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3516#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3517#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3536#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3553#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3535#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3521#L509-11 strlen_#res := strlen_~i~0; 3518#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 3519#L529 assume !(0 == strstr_~nl~0 % 4294967296); 3522#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 3523#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3545#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 3504#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3501#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3502#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3544#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3581#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3578#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 3557#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 3556#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 3555#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 3554#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3507#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 3503#L517-3 [2018-11-23 05:45:00,469 INFO L796 eck$LassoCheckResult]: Loop: 3503#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3499#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3500#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3503#L517-3 [2018-11-23 05:45:00,469 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:45:00,470 INFO L82 PathProgramCache]: Analyzing trace with hash -224601240, now seen corresponding path program 4 times [2018-11-23 05:45:00,470 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:45:00,470 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:45:00,472 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:45:00,473 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:45:00,473 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:45:00,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:45:00,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:45:00,530 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:45:00,530 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 7 times [2018-11-23 05:45:00,530 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:45:00,530 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:45:00,531 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:45:00,531 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-23 05:45:00,531 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:45:00,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:45:00,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:45:00,535 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:45:00,536 INFO L82 PathProgramCache]: Analyzing trace with hash 463587919, now seen corresponding path program 5 times [2018-11-23 05:45:00,536 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 05:45:00,536 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 05:45:00,536 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:45:00,536 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 05:45:00,536 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 05:45:00,553 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:45:00,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 05:45:02,554 WARN L180 SmtUtils]: Spent 1.90 s on a formula simplification. DAG size of input: 470 DAG size of output: 339 [2018-11-23 05:45:02,772 WARN L180 SmtUtils]: Spent 208.00 ms on a formula simplification that was a NOOP. DAG size: 169 [2018-11-23 05:45:02,774 INFO L216 LassoAnalysis]: Preferences: [2018-11-23 05:45:02,774 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-23 05:45:02,774 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-23 05:45:02,774 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-23 05:45:02,774 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-23 05:45:02,774 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-23 05:45:02,774 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-23 05:45:02,774 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-23 05:45:02,774 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration14_Lasso [2018-11-23 05:45:02,774 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-23 05:45:02,775 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-11-23 05:45:02,778 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:02,780 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:02,781 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:02,786 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:02,787 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:02,788 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:02,789 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,550 WARN L180 SmtUtils]: Spent 328.00 ms on a formula simplification. DAG size of input: 176 DAG size of output: 140 [2018-11-23 05:45:03,790 WARN L180 SmtUtils]: Spent 177.00 ms on a formula simplification. DAG size of input: 115 DAG size of output: 92 [2018-11-23 05:45:03,791 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,792 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,792 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,794 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,795 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,795 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,796 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,797 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,798 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,801 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,802 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,804 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,805 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,807 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,808 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,817 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,818 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,819 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,820 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,821 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,822 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,823 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,824 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,826 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,827 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,829 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-23 05:45:03,973 WARN L180 SmtUtils]: Spent 122.00 ms on a formula simplification. DAG size of input: 77 DAG size of output: 72 [2018-11-23 05:45:04,614 WARN L180 SmtUtils]: Spent 331.00 ms on a formula simplification. DAG size of input: 66 DAG size of output: 62 [2018-11-23 05:45:04,777 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-11-23 05:45:04,777 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-11-23 05:45:04,777 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:45:04,778 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:45:04,778 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:45:04,778 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:45:04,778 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:45:04,778 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:45:04,778 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:45:04,778 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:45:04,779 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:45:04,779 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:45:04,779 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:45:04,779 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:45:04,780 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:45:04,780 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:45:04,780 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:45:04,780 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:45:04,780 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:45:04,780 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:45:04,780 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:45:04,781 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:45:04,781 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:45:04,781 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:45:04,781 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:45:04,781 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:45:04,781 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:45:04,781 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:45:04,781 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:45:04,782 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:45:04,782 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:45:04,782 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:45:04,782 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:45:04,782 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:45:04,782 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:45:04,782 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:45:04,783 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:45:04,783 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:45:04,783 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:45:04,783 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:45:04,783 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:45:04,783 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:45:04,783 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:45:04,784 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:45:04,784 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:45:04,784 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:45:04,784 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:45:04,784 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:45:04,784 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:45:04,785 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-23 05:45:04,785 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:45:04,785 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:45:04,785 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:45:04,785 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-23 05:45:04,785 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-23 05:45:04,785 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:45:04,786 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:45:04,786 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:45:04,786 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:45:04,786 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:45:04,786 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:45:04,786 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:45:04,787 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:45:04,788 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-23 05:45:04,788 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-23 05:45:04,788 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-23 05:45:04,788 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-23 05:45:04,789 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-23 05:45:04,789 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-23 05:45:04,791 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-23 05:45:04,792 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-23 05:45:04,814 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-23 05:45:04,832 INFO L443 ModelExtractionUtils]: Simplification made 6 calls to the SMT solver. [2018-11-23 05:45:04,832 INFO L444 ModelExtractionUtils]: 66 out of 73 variables were initially zero. Simplification set additionally 4 variables to zero. [2018-11-23 05:45:04,832 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-23 05:45:04,833 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-23 05:45:04,833 INFO L518 LassoAnalysis]: Proved termination. [2018-11-23 05:45:04,833 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select #length ULTIMATE.start_main_~hay~0.base)_3, ULTIMATE.start_memcmp_~d~0.offset) = 1*v_rep(select #length ULTIMATE.start_main_~hay~0.base)_3 - 1*ULTIMATE.start_memcmp_~d~0.offset Supporting invariants [] [2018-11-23 05:45:05,212 INFO L297 tatePredicateManager]: 92 out of 94 supporting invariants were superfluous and have been removed [2018-11-23 05:45:05,214 WARN L1272 BoogieBacktranslator]: unknown boogie variable #length [2018-11-23 05:45:05,226 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:45:05,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:45:05,254 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:45:05,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:45:05,275 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:45:05,306 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:45:05,306 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.3 stem predicates 2 loop predicates [2018-11-23 05:45:05,306 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18 Second operand 6 states. [2018-11-23 05:45:05,331 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18. Second operand 6 states. Result 118 states and 135 transitions. Complement of second has 9 states. [2018-11-23 05:45:05,332 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 3 stem states 2 non-accepting loop states 1 accepting loop states [2018-11-23 05:45:05,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 05:45:05,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 34 transitions. [2018-11-23 05:45:05,332 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 34 transitions. Stem has 44 letters. Loop has 3 letters. [2018-11-23 05:45:05,333 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:45:05,333 INFO L642 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2018-11-23 05:45:05,344 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:45:05,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:45:05,373 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:45:05,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:45:05,395 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:45:05,421 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:45:05,422 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.3 stem predicates 2 loop predicates [2018-11-23 05:45:05,422 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18 Second operand 6 states. [2018-11-23 05:45:05,459 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18. Second operand 6 states. Result 118 states and 135 transitions. Complement of second has 9 states. [2018-11-23 05:45:05,460 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 3 stem states 2 non-accepting loop states 1 accepting loop states [2018-11-23 05:45:05,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 05:45:05,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 34 transitions. [2018-11-23 05:45:05,461 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 34 transitions. Stem has 44 letters. Loop has 3 letters. [2018-11-23 05:45:05,461 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:45:05,461 INFO L642 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2018-11-23 05:45:05,476 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 05:45:05,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:45:05,514 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:45:05,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 05:45:05,549 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 05:45:05,558 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 05:45:05,558 INFO L152 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.3 stem predicates 2 loop predicates [2018-11-23 05:45:05,558 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18 Second operand 6 states. [2018-11-23 05:45:05,582 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18. Second operand 6 states. Result 118 states and 135 transitions. Complement of second has 8 states. [2018-11-23 05:45:05,582 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 3 stem states 2 non-accepting loop states 1 accepting loop states [2018-11-23 05:45:05,582 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-23 05:45:05,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2018-11-23 05:45:05,583 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 40 transitions. Stem has 44 letters. Loop has 3 letters. [2018-11-23 05:45:05,583 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:45:05,583 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 40 transitions. Stem has 47 letters. Loop has 3 letters. [2018-11-23 05:45:05,583 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:45:05,583 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 40 transitions. Stem has 44 letters. Loop has 6 letters. [2018-11-23 05:45:05,585 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-23 05:45:05,585 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 118 states and 135 transitions. [2018-11-23 05:45:05,587 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2018-11-23 05:45:05,587 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 118 states to 0 states and 0 transitions. [2018-11-23 05:45:05,587 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2018-11-23 05:45:05,587 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2018-11-23 05:45:05,588 INFO L73 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2018-11-23 05:45:05,588 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2018-11-23 05:45:05,588 INFO L705 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-23 05:45:05,588 INFO L728 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-23 05:45:05,588 INFO L608 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-23 05:45:05,588 INFO L442 BuchiCegarLoop]: ======== Iteration 15============ [2018-11-23 05:45:05,588 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2018-11-23 05:45:05,588 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2018-11-23 05:45:05,588 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2018-11-23 05:45:05,593 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 23.11 05:45:05 BoogieIcfgContainer [2018-11-23 05:45:05,593 INFO L132 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2018-11-23 05:45:05,594 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 05:45:05,594 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 05:45:05,594 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 05:45:05,594 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 05:44:48" (3/4) ... [2018-11-23 05:45:05,598 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 05:45:05,598 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 05:45:05,598 INFO L168 Benchmark]: Toolchain (without parser) took 18027.61 ms. Allocated memory was 1.0 GB in the beginning and 1.5 GB in the end (delta: 448.3 MB). Free memory was 956.6 MB in the beginning and 1.4 GB in the end (delta: -406.0 MB). Peak memory consumption was 42.2 MB. Max. memory is 11.5 GB. [2018-11-23 05:45:05,599 INFO L168 Benchmark]: CDTParser took 0.14 ms. Allocated memory is still 1.0 GB. Free memory is still 985.5 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 05:45:05,599 INFO L168 Benchmark]: CACSL2BoogieTranslator took 328.23 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 135.3 MB). Free memory was 956.6 MB in the beginning and 1.1 GB in the end (delta: -167.3 MB). Peak memory consumption was 34.7 MB. Max. memory is 11.5 GB. [2018-11-23 05:45:05,600 INFO L168 Benchmark]: Boogie Procedure Inliner took 30.10 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. [2018-11-23 05:45:05,600 INFO L168 Benchmark]: Boogie Preprocessor took 19.83 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. [2018-11-23 05:45:05,600 INFO L168 Benchmark]: RCFGBuilder took 272.62 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 27.3 MB). Peak memory consumption was 27.3 MB. Max. memory is 11.5 GB. [2018-11-23 05:45:05,601 INFO L168 Benchmark]: BuchiAutomizer took 17370.10 ms. Allocated memory was 1.2 GB in the beginning and 1.5 GB in the end (delta: 313.0 MB). Free memory was 1.1 GB in the beginning and 1.4 GB in the end (delta: -274.0 MB). Peak memory consumption was 39.0 MB. Max. memory is 11.5 GB. [2018-11-23 05:45:05,601 INFO L168 Benchmark]: Witness Printer took 3.98 ms. Allocated memory is still 1.5 GB. Free memory is still 1.4 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 05:45:05,604 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.14 ms. Allocated memory is still 1.0 GB. Free memory is still 985.5 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 328.23 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 135.3 MB). Free memory was 956.6 MB in the beginning and 1.1 GB in the end (delta: -167.3 MB). Peak memory consumption was 34.7 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 30.10 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 19.83 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. * RCFGBuilder took 272.62 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 27.3 MB). Peak memory consumption was 27.3 MB. Max. memory is 11.5 GB. * BuchiAutomizer took 17370.10 ms. Allocated memory was 1.2 GB in the beginning and 1.5 GB in the end (delta: 313.0 MB). Free memory was 1.1 GB in the beginning and 1.4 GB in the end (delta: -274.0 MB). Peak memory consumption was 39.0 MB. Max. memory is 11.5 GB. * Witness Printer took 3.98 ms. Allocated memory is still 1.5 GB. Free memory is still 1.4 GB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - GenericResult: Unfinished Backtranslation unknown boogie variable #length - GenericResult: Unfinished Backtranslation unknown boogie variable #length - GenericResult: Unfinished Backtranslation unknown boogie variable #length - GenericResult: Unfinished Backtranslation unknown boogie variable #length - GenericResult: Unfinished Backtranslation unknown boogie variable #length * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Constructed decomposition of program Your program was decomposed into 14 terminating modules (9 trivial, 4 deterministic, 1 nondeterministic). One deterministic module has affine ranking function unknown-#length-unknown[__builtin_alloca (out_len)] + -1 * s and consists of 5 locations. One deterministic module has affine ranking function -1 * s + unknown-#length-unknown[__builtin_alloca (in_len)] and consists of 6 locations. One deterministic module has affine ranking function unknown-#length-unknown[hay] + -1 * haystack and consists of 6 locations. One deterministic module has affine ranking function unknown-#length-unknown[hay] + -1 * d and consists of 5 locations. One nondeterministic module has affine ranking function unknown-#length-unknown[hay] + -1 * d and consists of 6 locations. 9 modules have a trivial ranking function, the largest among these consists of 22 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 17.3s and 15 iterations. TraceHistogramMax:4. Analysis of lassos took 13.5s. Construction of modules took 0.9s. Büchi inclusion checks took 2.7s. Highest rank in rank-based complementation 3. Minimization of det autom 1. Minimization of nondet autom 13. Automata minimization 0.0s AutomataMinimizationTime, 13 MinimizatonAttempts, 512 StatesRemovedByMinimization, 9 NontrivialMinimizations. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had 91 states and ocurred in iteration 13. Nontrivial modules had stage [4, 0, 1, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 477 SDtfs, 1377 SDslu, 1755 SDs, 0 SdLazy, 1935 SolverSat, 240 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.9s Time LassoAnalysisResults: nont0 unkn0 SFLI0 SFLT0 conc0 concLT0 SILN0 SILU9 SILI0 SILT0 lasso5 LassoPreprocessingBenchmarks: Lassos: inital288 mio100 ax100 hnf99 lsp88 ukn85 mio100 lsp43 div107 bol100 ite100 ukn100 eq187 hnf85 smp97 dnf154 smp89 tf100 neg99 sie101 LassoTerminationAnalysisBenchmarks: ConstraintsSatisfiability: unsat Degree: 0 Time: 20ms VariablesStem: 4 VariablesLoop: 0 DisjunctsStem: 2 DisjunctsLoop: 1 SupportingInvariants: 2 MotzkinApplications: 8 LassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating RESULT: Ultimate proved your program to be correct! Received shutdown request...