./Ultimate.py --spec ../../sv-benchmarks/c/Termination.prp --file ../../sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 5842f4b8 Calling Ultimate with: java -Dosgi.configuration.area=/tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/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_e5905868-bb7a-41a9-83f2-528c7ab56d8b/bin-2019/uautomizer/config/svcomp-Termination-64bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/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-5842f4b [2018-11-18 08:34:28,824 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-18 08:34:28,826 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-18 08:34:28,833 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-18 08:34:28,833 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-18 08:34:28,834 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-18 08:34:28,835 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-18 08:34:28,836 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-18 08:34:28,838 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-18 08:34:28,838 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-18 08:34:28,839 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-18 08:34:28,839 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-18 08:34:28,840 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-18 08:34:28,840 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-18 08:34:28,841 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-18 08:34:28,841 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-18 08:34:28,841 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-18 08:34:28,843 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-18 08:34:28,844 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-18 08:34:28,845 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-18 08:34:28,846 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-18 08:34:28,846 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-18 08:34:28,847 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-18 08:34:28,848 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-18 08:34:28,848 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-18 08:34:28,848 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-18 08:34:28,849 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-18 08:34:28,849 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-18 08:34:28,850 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-18 08:34:28,851 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-18 08:34:28,851 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-18 08:34:28,851 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-18 08:34:28,851 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-18 08:34:28,852 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-18 08:34:28,852 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-18 08:34:28,853 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-18 08:34:28,853 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/bin-2019/uautomizer/config/svcomp-Termination-64bit-Automizer_Default.epf [2018-11-18 08:34:28,862 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-18 08:34:28,862 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-18 08:34:28,863 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-18 08:34:28,863 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-18 08:34:28,863 INFO L133 SettingsManager]: * Use SBE=true [2018-11-18 08:34:28,863 INFO L131 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2018-11-18 08:34:28,864 INFO L133 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2018-11-18 08:34:28,864 INFO L133 SettingsManager]: * Use old map elimination=false [2018-11-18 08:34:28,864 INFO L133 SettingsManager]: * Use external solver (rank synthesis)=false [2018-11-18 08:34:28,864 INFO L133 SettingsManager]: * Use only trivial implications for array writes=true [2018-11-18 08:34:28,864 INFO L133 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2018-11-18 08:34:28,864 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-18 08:34:28,864 INFO L133 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2018-11-18 08:34:28,864 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-18 08:34:28,865 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-18 08:34:28,865 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2018-11-18 08:34:28,865 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2018-11-18 08:34:28,865 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2018-11-18 08:34:28,865 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-18 08:34:28,865 INFO L133 SettingsManager]: * Assume nondeterminstic values are in range=false [2018-11-18 08:34:28,865 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-18 08:34:28,866 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2018-11-18 08:34:28,866 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-18 08:34:28,866 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-18 08:34:28,866 INFO L133 SettingsManager]: * To the following directory=/home/matthias/ultimate/dump [2018-11-18 08:34:28,866 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-18 08:34:28,866 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-18 08:34:28,866 INFO L133 SettingsManager]: * Dump automata to the following directory=/home/matthias/ultimate/dump/auto [2018-11-18 08:34:28,867 INFO L131 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2018-11-18 08:34:28,867 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_e5905868-bb7a-41a9-83f2-528c7ab56d8b/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-18 08:34:28,891 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-18 08:34:28,901 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-18 08:34:28,904 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-18 08:34:28,905 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-18 08:34:28,905 INFO L276 PluginConnector]: CDTParser initialized [2018-11-18 08:34:28,906 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/bin-2019/uautomizer/../../sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i [2018-11-18 08:34:28,955 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/bin-2019/uautomizer/data/5e366b9c9/279811b4a96d4fc084450d43f93ce0a4/FLAGbb91ac4fb [2018-11-18 08:34:29,331 INFO L307 CDTParser]: Found 1 translation units. [2018-11-18 08:34:29,332 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i [2018-11-18 08:34:29,342 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/bin-2019/uautomizer/data/5e366b9c9/279811b4a96d4fc084450d43f93ce0a4/FLAGbb91ac4fb [2018-11-18 08:34:29,718 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/bin-2019/uautomizer/data/5e366b9c9/279811b4a96d4fc084450d43f93ce0a4 [2018-11-18 08:34:29,720 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-18 08:34:29,721 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-18 08:34:29,721 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-18 08:34:29,721 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-18 08:34:29,724 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-18 08:34:29,724 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.11 08:34:29" (1/1) ... [2018-11-18 08:34:29,726 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2a74d2e9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:29, skipping insertion in model container [2018-11-18 08:34:29,726 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.11 08:34:29" (1/1) ... [2018-11-18 08:34:29,732 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-18 08:34:29,759 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-18 08:34:29,955 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-18 08:34:29,962 INFO L191 MainTranslator]: Completed pre-run [2018-11-18 08:34:29,994 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-18 08:34:30,073 INFO L195 MainTranslator]: Completed translation [2018-11-18 08:34:30,074 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30 WrapperNode [2018-11-18 08:34:30,074 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-18 08:34:30,074 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-18 08:34:30,074 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-18 08:34:30,075 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-18 08:34:30,079 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (1/1) ... [2018-11-18 08:34:30,088 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (1/1) ... [2018-11-18 08:34:30,103 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-18 08:34:30,103 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-18 08:34:30,103 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-18 08:34:30,103 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-18 08:34:30,109 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (1/1) ... [2018-11-18 08:34:30,109 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (1/1) ... [2018-11-18 08:34:30,111 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (1/1) ... [2018-11-18 08:34:30,111 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (1/1) ... [2018-11-18 08:34:30,115 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (1/1) ... [2018-11-18 08:34:30,118 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (1/1) ... [2018-11-18 08:34:30,119 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (1/1) ... [2018-11-18 08:34:30,120 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-18 08:34:30,121 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-18 08:34:30,121 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-18 08:34:30,121 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-18 08:34:30,121 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/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-18 08:34:30,152 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-11-18 08:34:30,153 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-18 08:34:30,153 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-18 08:34:30,153 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-11-18 08:34:30,153 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-18 08:34:30,153 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-18 08:34:30,382 INFO L278 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-18 08:34:30,383 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.11 08:34:30 BoogieIcfgContainer [2018-11-18 08:34:30,383 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-18 08:34:30,383 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2018-11-18 08:34:30,383 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2018-11-18 08:34:30,386 INFO L276 PluginConnector]: BuchiAutomizer initialized [2018-11-18 08:34:30,387 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-18 08:34:30,387 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 18.11 08:34:29" (1/3) ... [2018-11-18 08:34:30,388 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@177fd1c9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 18.11 08:34:30, skipping insertion in model container [2018-11-18 08:34:30,388 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-18 08:34:30,388 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.11 08:34:30" (2/3) ... [2018-11-18 08:34:30,388 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@177fd1c9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 18.11 08:34:30, skipping insertion in model container [2018-11-18 08:34:30,388 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-18 08:34:30,388 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.11 08:34:30" (3/3) ... [2018-11-18 08:34:30,390 INFO L375 chiAutomizerObserver]: Analyzing ICFG strstr_true-termination.c.i [2018-11-18 08:34:30,427 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-18 08:34:30,427 INFO L374 BuchiCegarLoop]: Interprodecural is true [2018-11-18 08:34:30,428 INFO L375 BuchiCegarLoop]: Hoare is false [2018-11-18 08:34:30,428 INFO L376 BuchiCegarLoop]: Compute interpolants for ForwardPredicates [2018-11-18 08:34:30,428 INFO L377 BuchiCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-18 08:34:30,428 INFO L378 BuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-18 08:34:30,428 INFO L379 BuchiCegarLoop]: Difference is false [2018-11-18 08:34:30,428 INFO L380 BuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-18 08:34:30,428 INFO L383 BuchiCegarLoop]: ======== Iteration 0==of CEGAR loop == BuchiCegarLoop======== [2018-11-18 08:34:30,441 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 35 states. [2018-11-18 08:34:30,459 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 17 [2018-11-18 08:34:30,459 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:30,459 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:30,463 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2018-11-18 08:34:30,463 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-18 08:34:30,463 INFO L442 BuchiCegarLoop]: ======== Iteration 1============ [2018-11-18 08:34:30,464 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 35 states. [2018-11-18 08:34:30,465 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 17 [2018-11-18 08:34:30,465 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:30,465 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:30,465 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2018-11-18 08:34:30,465 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-18 08:34:30,471 INFO L794 eck$LassoCheckResult]: Stem: 30#ULTIMATE.startENTRYtrue assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 10#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 15#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; 27#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 20#L508true assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 24#L509-4true [2018-11-18 08:34:30,471 INFO L796 eck$LassoCheckResult]: Loop: 24#L509-4true assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 32#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; 36#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; 24#L509-4true [2018-11-18 08:34:30,476 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:30,476 INFO L82 PathProgramCache]: Analyzing trace with hash 28695849, now seen corresponding path program 1 times [2018-11-18 08:34:30,478 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:30,479 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:30,513 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:30,513 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:30,513 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:30,549 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:30,560 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:30,576 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:30,576 INFO L82 PathProgramCache]: Analyzing trace with hash 50806, now seen corresponding path program 1 times [2018-11-18 08:34:30,577 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:30,577 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:30,578 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:30,578 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:30,578 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:30,581 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:30,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:30,585 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:30,586 INFO L82 PathProgramCache]: Analyzing trace with hash 179566670, now seen corresponding path program 1 times [2018-11-18 08:34:30,586 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:30,586 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:30,586 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:30,586 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:30,587 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:30,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:30,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:30,949 WARN L180 SmtUtils]: Spent 247.00 ms on a formula simplification. DAG size of input: 111 DAG size of output: 94 [2018-11-18 08:34:31,035 INFO L216 LassoAnalysis]: Preferences: [2018-11-18 08:34:31,036 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-18 08:34:31,036 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-18 08:34:31,036 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-18 08:34:31,036 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-18 08:34:31,036 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-18 08:34:31,037 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-18 08:34:31,037 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-18 08:34:31,037 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration1_Lasso [2018-11-18 08:34:31,037 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-18 08:34:31,037 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-11-18 08:34:31,056 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-18 08:34:31,227 WARN L180 SmtUtils]: Spent 120.00 ms on a formula simplification. DAG size of input: 72 DAG size of output: 68 [2018-11-18 08:34:31,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-18 08:34:31,261 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-18 08:34:31,263 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-18 08:34:31,272 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-18 08:34:31,274 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-18 08:34:31,276 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-18 08:34:31,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-18 08:34:31,279 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-18 08:34:31,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-18 08:34:31,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-18 08:34:31,284 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-18 08:34:31,290 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-18 08:34:31,292 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-18 08:34:31,293 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-18 08:34:31,294 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-18 08:34:31,296 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-18 08:34:31,297 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-18 08:34:31,298 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-18 08:34:31,301 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-18 08:34:31,302 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-18 08:34:31,305 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-18 08:34:31,306 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-18 08:34:31,308 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-18 08:34:31,309 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-18 08:34:31,311 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-18 08:34:31,312 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-18 08:34:31,313 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-18 08:34:31,606 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-11-18 08:34:31,609 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-11-18 08:34:31,610 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-18 08:34:31,612 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:31,612 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-18 08:34:31,612 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:31,612 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:31,616 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-18 08:34:31,616 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:31,628 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:31,629 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-18 08:34:31,629 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:31,629 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:31,630 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:31,630 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:31,634 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:31,634 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:31,667 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-18 08:34:31,695 INFO L443 ModelExtractionUtils]: Simplification made 7 calls to the SMT solver. [2018-11-18 08:34:31,695 INFO L444 ModelExtractionUtils]: 25 out of 31 variables were initially zero. Simplification set additionally 3 variables to zero. [2018-11-18 08:34:31,697 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-18 08:34:31,698 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-18 08:34:31,698 INFO L518 LassoAnalysis]: Proved termination. [2018-11-18 08:34:31,699 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-18 08:34:31,732 INFO L297 tatePredicateManager]: 8 out of 9 supporting invariants were superfluous and have been removed [2018-11-18 08:34:31,738 WARN L1239 BoogieBacktranslator]: unknown boogie variable #length [2018-11-18 08:34:31,754 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:31,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:31,771 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:31,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:31,786 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:31,798 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:31,807 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-18 08:34:31,808 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 35 states. Second operand 4 states. [2018-11-18 08:34:31,859 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 35 states.. Second operand 4 states. Result 96 states and 136 transitions. Complement of second has 7 states. [2018-11-18 08:34:31,860 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-18 08:34:31,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-18 08:34:31,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 89 transitions. [2018-11-18 08:34:31,866 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 89 transitions. Stem has 5 letters. Loop has 3 letters. [2018-11-18 08:34:31,866 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:31,866 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 89 transitions. Stem has 8 letters. Loop has 3 letters. [2018-11-18 08:34:31,867 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:31,867 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 89 transitions. Stem has 5 letters. Loop has 6 letters. [2018-11-18 08:34:31,867 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:31,867 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 96 states and 136 transitions. [2018-11-18 08:34:31,869 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 28 [2018-11-18 08:34:31,872 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 96 states to 51 states and 66 transitions. [2018-11-18 08:34:31,873 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 47 [2018-11-18 08:34:31,873 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 48 [2018-11-18 08:34:31,874 INFO L73 IsDeterministic]: Start isDeterministic. Operand 51 states and 66 transitions. [2018-11-18 08:34:31,874 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:31,874 INFO L705 BuchiCegarLoop]: Abstraction has 51 states and 66 transitions. [2018-11-18 08:34:31,884 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states and 66 transitions. [2018-11-18 08:34:31,892 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 51. [2018-11-18 08:34:31,892 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 51 states. [2018-11-18 08:34:31,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 66 transitions. [2018-11-18 08:34:31,894 INFO L728 BuchiCegarLoop]: Abstraction has 51 states and 66 transitions. [2018-11-18 08:34:31,894 INFO L608 BuchiCegarLoop]: Abstraction has 51 states and 66 transitions. [2018-11-18 08:34:31,894 INFO L442 BuchiCegarLoop]: ======== Iteration 2============ [2018-11-18 08:34:31,894 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 51 states and 66 transitions. [2018-11-18 08:34:31,895 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 28 [2018-11-18 08:34:31,895 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:31,895 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:31,896 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2018-11-18 08:34:31,896 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-18 08:34:31,896 INFO L794 eck$LassoCheckResult]: Stem: 259#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 236#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 237#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; 244#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 251#L508 assume strlen_~s.base == 0 && strlen_~s.offset == 0;strlen_#res := 0; 238#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 239#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 240#L509-10 [2018-11-18 08:34:31,896 INFO L796 eck$LassoCheckResult]: Loop: 240#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 241#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; 258#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; 240#L509-10 [2018-11-18 08:34:31,896 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:31,897 INFO L82 PathProgramCache]: Analyzing trace with hash 1806906284, now seen corresponding path program 1 times [2018-11-18 08:34:31,897 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:31,897 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:31,898 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:31,898 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:31,898 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:31,903 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:31,927 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:31,928 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-18 08:34:31,928 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-18 08:34:31,929 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-18 08:34:31,929 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:31,929 INFO L82 PathProgramCache]: Analyzing trace with hash 72652, now seen corresponding path program 1 times [2018-11-18 08:34:31,930 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:31,930 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:31,930 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:31,930 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:31,931 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:31,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:31,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:31,971 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-18 08:34:31,972 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-18 08:34:31,973 INFO L87 Difference]: Start difference. First operand 51 states and 66 transitions. cyclomatic complexity: 20 Second operand 3 states. [2018-11-18 08:34:31,982 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 08:34:31,982 INFO L93 Difference]: Finished difference Result 31 states and 38 transitions. [2018-11-18 08:34:31,982 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-18 08:34:31,983 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 31 states and 38 transitions. [2018-11-18 08:34:31,983 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 14 [2018-11-18 08:34:31,984 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 31 states to 31 states and 38 transitions. [2018-11-18 08:34:31,984 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2018-11-18 08:34:31,984 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2018-11-18 08:34:31,984 INFO L73 IsDeterministic]: Start isDeterministic. Operand 31 states and 38 transitions. [2018-11-18 08:34:31,984 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:31,984 INFO L705 BuchiCegarLoop]: Abstraction has 31 states and 38 transitions. [2018-11-18 08:34:31,984 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states and 38 transitions. [2018-11-18 08:34:31,985 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2018-11-18 08:34:31,985 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-11-18 08:34:31,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 38 transitions. [2018-11-18 08:34:31,985 INFO L728 BuchiCegarLoop]: Abstraction has 31 states and 38 transitions. [2018-11-18 08:34:31,986 INFO L608 BuchiCegarLoop]: Abstraction has 31 states and 38 transitions. [2018-11-18 08:34:31,986 INFO L442 BuchiCegarLoop]: ======== Iteration 3============ [2018-11-18 08:34:31,986 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 38 transitions. [2018-11-18 08:34:31,986 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 14 [2018-11-18 08:34:31,986 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:31,986 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:31,987 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 08:34:31,987 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-11-18 08:34:31,987 INFO L794 eck$LassoCheckResult]: Stem: 339#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 317#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 318#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; 326#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 333#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 334#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 336#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 338#L509-5 strlen_#res := strlen_~i~0; 323#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 324#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 320#L509-10 [2018-11-18 08:34:31,987 INFO L796 eck$LassoCheckResult]: Loop: 320#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 325#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; 319#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; 320#L509-10 [2018-11-18 08:34:31,987 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:31,987 INFO L82 PathProgramCache]: Analyzing trace with hash 764823385, now seen corresponding path program 1 times [2018-11-18 08:34:31,987 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:31,988 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:31,988 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:31,988 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:31,988 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:31,996 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:32,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:32,006 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:32,006 INFO L82 PathProgramCache]: Analyzing trace with hash 72652, now seen corresponding path program 2 times [2018-11-18 08:34:32,006 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:32,007 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:32,007 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:32,007 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:32,007 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:32,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:32,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:32,012 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:32,012 INFO L82 PathProgramCache]: Analyzing trace with hash 52000116, now seen corresponding path program 1 times [2018-11-18 08:34:32,012 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:32,012 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:32,013 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:32,013 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:32,013 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:32,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:32,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:32,290 WARN L180 SmtUtils]: Spent 217.00 ms on a formula simplification. DAG size of input: 141 DAG size of output: 113 [2018-11-18 08:34:32,390 INFO L216 LassoAnalysis]: Preferences: [2018-11-18 08:34:32,390 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-18 08:34:32,390 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-18 08:34:32,390 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-18 08:34:32,390 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-18 08:34:32,390 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-18 08:34:32,390 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-18 08:34:32,391 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-18 08:34:32,391 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration3_Lasso [2018-11-18 08:34:32,391 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-18 08:34:32,391 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-11-18 08:34:32,394 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-18 08:34:32,397 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-18 08:34:32,398 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-18 08:34:32,399 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-18 08:34:32,401 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-18 08:34:32,402 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-18 08:34:32,403 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-18 08:34:32,405 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-18 08:34:32,406 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-18 08:34:32,407 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-18 08:34:32,408 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-18 08:34:32,409 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-18 08:34:32,410 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-18 08:34:32,412 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-18 08:34:32,413 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-18 08:34:32,416 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-18 08:34:32,417 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-18 08:34:32,420 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-18 08:34:32,423 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-18 08:34:32,425 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-18 08:34:32,426 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-18 08:34:32,427 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-18 08:34:32,428 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-18 08:34:32,429 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-18 08:34:32,432 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-18 08:34:32,434 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-18 08:34:32,436 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-18 08:34:32,624 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-18 08:34:32,898 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-11-18 08:34:32,898 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-11-18 08:34:32,898 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-18 08:34:32,899 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,899 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,900 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,900 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,900 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,900 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,900 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,901 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,901 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-18 08:34:32,901 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,901 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,901 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,901 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,902 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,902 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,902 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,902 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,902 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-18 08:34:32,902 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,902 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,903 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,903 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,903 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,903 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,903 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,903 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,903 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-18 08:34:32,903 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,904 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,904 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,904 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,904 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,904 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,904 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,905 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,905 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-18 08:34:32,905 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,905 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,905 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,905 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,906 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:32,906 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:32,908 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,908 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-18 08:34:32,909 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,909 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,909 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,909 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,909 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,909 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,909 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,910 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,910 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-18 08:34:32,910 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,911 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,911 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,911 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,912 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:32,912 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:32,913 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,913 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-18 08:34:32,914 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,914 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,914 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,914 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,914 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,915 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,915 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,915 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,915 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-18 08:34:32,916 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,916 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,916 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,916 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,916 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,917 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,917 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,917 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,918 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-18 08:34:32,918 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,918 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,918 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,918 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,918 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,918 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,919 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,919 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,919 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-18 08:34:32,920 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,920 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,920 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,920 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,920 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,920 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,920 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,921 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,921 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-18 08:34:32,921 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,922 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,922 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,922 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,922 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,922 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,922 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,923 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,923 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-18 08:34:32,923 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,923 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,923 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,924 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,924 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,924 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,924 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,925 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,925 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-18 08:34:32,925 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,925 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,925 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,926 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,926 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,926 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,926 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,926 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,927 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-18 08:34:32,927 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,927 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,927 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,927 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,928 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:32,928 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:32,930 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,931 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-18 08:34:32,931 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,931 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,931 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,931 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,931 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,932 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,932 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,932 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,933 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-18 08:34:32,933 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,933 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,933 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,933 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,933 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,933 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,934 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,934 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,934 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-18 08:34:32,935 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,935 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,935 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,935 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,936 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:32,936 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:32,940 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,941 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-18 08:34:32,941 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,941 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,941 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,941 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,941 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,942 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,942 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,942 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,943 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-18 08:34:32,943 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,943 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,943 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,943 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,943 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,944 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,944 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,944 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,944 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-18 08:34:32,945 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,945 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,945 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,945 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,945 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,945 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,945 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,946 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,946 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-18 08:34:32,946 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,946 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,947 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,947 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,947 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,947 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,947 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,948 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,948 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-18 08:34:32,948 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,948 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,948 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,949 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,949 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,949 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,949 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,949 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,950 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-18 08:34:32,950 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,950 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,950 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,950 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,950 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,951 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,951 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,951 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,952 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-18 08:34:32,952 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,952 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,952 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,953 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,953 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,953 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,953 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,953 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,954 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-18 08:34:32,954 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,954 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:32,954 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,954 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,955 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,955 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:32,955 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:32,955 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,956 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-18 08:34:32,956 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,956 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,956 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,956 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,957 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:32,957 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:32,959 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,960 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-18 08:34:32,960 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,960 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-18 08:34:32,960 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,960 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,962 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-18 08:34:32,962 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:32,971 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,971 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-18 08:34:32,971 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,972 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,972 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,972 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,972 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:32,972 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:32,974 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:32,974 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-18 08:34:32,975 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:32,975 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:32,975 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:32,975 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:32,978 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:32,978 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:32,993 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-18 08:34:33,001 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2018-11-18 08:34:33,001 INFO L444 ModelExtractionUtils]: 44 out of 49 variables were initially zero. Simplification set additionally 2 variables to zero. [2018-11-18 08:34:33,002 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-18 08:34:33,002 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-18 08:34:33,002 INFO L518 LassoAnalysis]: Proved termination. [2018-11-18 08:34:33,003 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-18 08:34:33,051 INFO L297 tatePredicateManager]: 11 out of 12 supporting invariants were superfluous and have been removed [2018-11-18 08:34:33,053 WARN L1239 BoogieBacktranslator]: unknown boogie variable #length [2018-11-18 08:34:33,067 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:33,080 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:33,081 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:33,106 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:33,107 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:33,135 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:33,135 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-18 08:34:33,135 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 31 states and 38 transitions. cyclomatic complexity: 10 Second operand 6 states. [2018-11-18 08:34:33,234 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 31 states and 38 transitions. cyclomatic complexity: 10. Second operand 6 states. Result 63 states and 78 transitions. Complement of second has 7 states. [2018-11-18 08:34:33,235 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-18 08:34:33,235 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-18 08:34:33,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 52 transitions. [2018-11-18 08:34:33,236 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 52 transitions. Stem has 10 letters. Loop has 3 letters. [2018-11-18 08:34:33,236 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:33,236 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 52 transitions. Stem has 13 letters. Loop has 3 letters. [2018-11-18 08:34:33,236 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:33,236 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 52 transitions. Stem has 10 letters. Loop has 6 letters. [2018-11-18 08:34:33,237 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:33,237 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 63 states and 78 transitions. [2018-11-18 08:34:33,238 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 22 [2018-11-18 08:34:33,238 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 63 states to 47 states and 58 transitions. [2018-11-18 08:34:33,238 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 40 [2018-11-18 08:34:33,238 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 41 [2018-11-18 08:34:33,238 INFO L73 IsDeterministic]: Start isDeterministic. Operand 47 states and 58 transitions. [2018-11-18 08:34:33,239 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:33,239 INFO L705 BuchiCegarLoop]: Abstraction has 47 states and 58 transitions. [2018-11-18 08:34:33,239 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states and 58 transitions. [2018-11-18 08:34:33,240 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 33. [2018-11-18 08:34:33,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-18 08:34:33,241 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 41 transitions. [2018-11-18 08:34:33,241 INFO L728 BuchiCegarLoop]: Abstraction has 33 states and 41 transitions. [2018-11-18 08:34:33,241 INFO L608 BuchiCegarLoop]: Abstraction has 33 states and 41 transitions. [2018-11-18 08:34:33,241 INFO L442 BuchiCegarLoop]: ======== Iteration 4============ [2018-11-18 08:34:33,241 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33 states and 41 transitions. [2018-11-18 08:34:33,241 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 11 [2018-11-18 08:34:33,241 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:33,241 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:33,242 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 08:34:33,242 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1] [2018-11-18 08:34:33,242 INFO L794 eck$LassoCheckResult]: Stem: 557#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 533#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 534#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; 544#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 551#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 552#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 553#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 556#L509-5 strlen_#res := strlen_~i~0; 539#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 540#L508-2 assume strlen_~s.base == 0 && strlen_~s.offset == 0;strlen_#res := 0; 545#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 546#L529 assume !(0 == strstr_~nl~0 % 4294967296); 548#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 549#L531-4 [2018-11-18 08:34:33,242 INFO L796 eck$LassoCheckResult]: Loop: 549#L531-4 assume true; 558#L531-1 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; 537#L532 assume !strstr_#t~short17; 538#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 547#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 549#L531-4 [2018-11-18 08:34:33,242 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:33,243 INFO L82 PathProgramCache]: Analyzing trace with hash 51953446, now seen corresponding path program 1 times [2018-11-18 08:34:33,243 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:33,243 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:33,243 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,243 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:33,243 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,251 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:33,275 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:33,276 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-18 08:34:33,276 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-18 08:34:33,276 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-18 08:34:33,276 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:33,276 INFO L82 PathProgramCache]: Analyzing trace with hash 95611490, now seen corresponding path program 1 times [2018-11-18 08:34:33,276 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:33,276 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:33,277 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,277 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:33,277 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,280 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:33,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:33,363 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-18 08:34:33,364 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-18 08:34:33,364 INFO L87 Difference]: Start difference. First operand 33 states and 41 transitions. cyclomatic complexity: 11 Second operand 5 states. [2018-11-18 08:34:33,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 08:34:33,384 INFO L93 Difference]: Finished difference Result 33 states and 40 transitions. [2018-11-18 08:34:33,384 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-18 08:34:33,384 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 33 states and 40 transitions. [2018-11-18 08:34:33,384 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 11 [2018-11-18 08:34:33,384 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 33 states to 33 states and 40 transitions. [2018-11-18 08:34:33,384 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 27 [2018-11-18 08:34:33,385 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 27 [2018-11-18 08:34:33,385 INFO L73 IsDeterministic]: Start isDeterministic. Operand 33 states and 40 transitions. [2018-11-18 08:34:33,385 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:33,385 INFO L705 BuchiCegarLoop]: Abstraction has 33 states and 40 transitions. [2018-11-18 08:34:33,385 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states and 40 transitions. [2018-11-18 08:34:33,385 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 33. [2018-11-18 08:34:33,386 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-18 08:34:33,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 40 transitions. [2018-11-18 08:34:33,386 INFO L728 BuchiCegarLoop]: Abstraction has 33 states and 40 transitions. [2018-11-18 08:34:33,386 INFO L608 BuchiCegarLoop]: Abstraction has 33 states and 40 transitions. [2018-11-18 08:34:33,386 INFO L442 BuchiCegarLoop]: ======== Iteration 5============ [2018-11-18 08:34:33,386 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33 states and 40 transitions. [2018-11-18 08:34:33,386 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 11 [2018-11-18 08:34:33,386 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:33,386 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:33,387 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-18 08:34:33,387 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1] [2018-11-18 08:34:33,387 INFO L794 eck$LassoCheckResult]: Stem: 633#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 613#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 614#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; 622#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 627#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 628#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 629#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 632#L509-5 strlen_#res := strlen_~i~0; 615#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 616#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 617#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 619#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 623#L509-11 strlen_#res := strlen_~i~0; 620#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 621#L529 assume !(0 == strstr_~nl~0 % 4294967296); 624#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 625#L531-4 [2018-11-18 08:34:33,387 INFO L796 eck$LassoCheckResult]: Loop: 625#L531-4 assume true; 634#L531-1 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; 611#L532 assume !strstr_#t~short17; 612#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 626#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 625#L531-4 [2018-11-18 08:34:33,387 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:33,387 INFO L82 PathProgramCache]: Analyzing trace with hash -1349410205, now seen corresponding path program 1 times [2018-11-18 08:34:33,387 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:33,387 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:33,387 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,388 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:33,388 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,391 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:33,422 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:33,422 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-18 08:34:33,422 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-18 08:34:33,422 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-18 08:34:33,423 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:33,423 INFO L82 PathProgramCache]: Analyzing trace with hash 95611490, now seen corresponding path program 2 times [2018-11-18 08:34:33,423 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:33,423 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:33,423 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,424 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:33,424 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:33,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:33,517 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-18 08:34:33,518 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-18 08:34:33,518 INFO L87 Difference]: Start difference. First operand 33 states and 40 transitions. cyclomatic complexity: 10 Second operand 5 states. [2018-11-18 08:34:33,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 08:34:33,570 INFO L93 Difference]: Finished difference Result 68 states and 78 transitions. [2018-11-18 08:34:33,572 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-18 08:34:33,572 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 68 states and 78 transitions. [2018-11-18 08:34:33,573 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 22 [2018-11-18 08:34:33,574 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 68 states to 51 states and 60 transitions. [2018-11-18 08:34:33,574 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 43 [2018-11-18 08:34:33,574 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 43 [2018-11-18 08:34:33,574 INFO L73 IsDeterministic]: Start isDeterministic. Operand 51 states and 60 transitions. [2018-11-18 08:34:33,574 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:33,574 INFO L705 BuchiCegarLoop]: Abstraction has 51 states and 60 transitions. [2018-11-18 08:34:33,574 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states and 60 transitions. [2018-11-18 08:34:33,575 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 33. [2018-11-18 08:34:33,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-18 08:34:33,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 39 transitions. [2018-11-18 08:34:33,576 INFO L728 BuchiCegarLoop]: Abstraction has 33 states and 39 transitions. [2018-11-18 08:34:33,578 INFO L608 BuchiCegarLoop]: Abstraction has 33 states and 39 transitions. [2018-11-18 08:34:33,578 INFO L442 BuchiCegarLoop]: ======== Iteration 6============ [2018-11-18 08:34:33,578 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33 states and 39 transitions. [2018-11-18 08:34:33,579 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 11 [2018-11-18 08:34:33,579 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:33,579 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:33,579 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-18 08:34:33,579 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1] [2018-11-18 08:34:33,580 INFO L794 eck$LassoCheckResult]: Stem: 748#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 724#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 725#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; 735#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 742#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 743#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 744#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; 750#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; 745#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 746#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 747#L509-5 strlen_#res := strlen_~i~0; 730#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 731#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 732#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 734#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 738#L509-11 strlen_#res := strlen_~i~0; 736#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 737#L529 assume !(0 == strstr_~nl~0 % 4294967296); 739#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 740#L531-4 [2018-11-18 08:34:33,580 INFO L796 eck$LassoCheckResult]: Loop: 740#L531-4 assume true; 749#L531-1 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; 728#L532 assume !strstr_#t~short17; 729#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 741#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 740#L531-4 [2018-11-18 08:34:33,580 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:33,580 INFO L82 PathProgramCache]: Analyzing trace with hash -1796108770, now seen corresponding path program 1 times [2018-11-18 08:34:33,580 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:33,580 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:33,581 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,581 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:33,581 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,593 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:33,732 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:33,732 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 08:34:33,733 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/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-18 08:34:33,744 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:33,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:33,766 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:33,807 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-18 08:34:33,823 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-18 08:34:33,823 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 12 [2018-11-18 08:34:33,824 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-18 08:34:33,824 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:33,824 INFO L82 PathProgramCache]: Analyzing trace with hash 95611490, now seen corresponding path program 3 times [2018-11-18 08:34:33,824 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:33,824 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:33,825 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,825 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:33,825 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:33,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:33,829 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:33,892 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-18 08:34:33,892 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2018-11-18 08:34:33,893 INFO L87 Difference]: Start difference. First operand 33 states and 39 transitions. cyclomatic complexity: 9 Second operand 13 states. [2018-11-18 08:34:34,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 08:34:34,097 INFO L93 Difference]: Finished difference Result 111 states and 129 transitions. [2018-11-18 08:34:34,097 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-18 08:34:34,097 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 111 states and 129 transitions. [2018-11-18 08:34:34,098 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 44 [2018-11-18 08:34:34,099 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 111 states to 101 states and 119 transitions. [2018-11-18 08:34:34,099 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 80 [2018-11-18 08:34:34,099 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 80 [2018-11-18 08:34:34,099 INFO L73 IsDeterministic]: Start isDeterministic. Operand 101 states and 119 transitions. [2018-11-18 08:34:34,100 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:34,100 INFO L705 BuchiCegarLoop]: Abstraction has 101 states and 119 transitions. [2018-11-18 08:34:34,100 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states and 119 transitions. [2018-11-18 08:34:34,101 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 33. [2018-11-18 08:34:34,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 33 states. [2018-11-18 08:34:34,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 38 transitions. [2018-11-18 08:34:34,102 INFO L728 BuchiCegarLoop]: Abstraction has 33 states and 38 transitions. [2018-11-18 08:34:34,102 INFO L608 BuchiCegarLoop]: Abstraction has 33 states and 38 transitions. [2018-11-18 08:34:34,102 INFO L442 BuchiCegarLoop]: ======== Iteration 7============ [2018-11-18 08:34:34,102 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33 states and 38 transitions. [2018-11-18 08:34:34,103 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 11 [2018-11-18 08:34:34,103 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:34,103 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:34,103 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-18 08:34:34,103 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1] [2018-11-18 08:34:34,103 INFO L794 eck$LassoCheckResult]: Stem: 981#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 957#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 958#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; 968#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 975#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 976#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 977#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; 983#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; 978#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 979#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 980#L509-5 strlen_#res := strlen_~i~0; 963#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 964#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 965#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 966#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; 959#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; 960#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 967#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 971#L509-11 strlen_#res := strlen_~i~0; 969#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 970#L529 assume !(0 == strstr_~nl~0 % 4294967296); 972#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 973#L531-4 [2018-11-18 08:34:34,104 INFO L796 eck$LassoCheckResult]: Loop: 973#L531-4 assume true; 982#L531-1 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; 961#L532 assume !strstr_#t~short17; 962#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 974#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 973#L531-4 [2018-11-18 08:34:34,104 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:34,104 INFO L82 PathProgramCache]: Analyzing trace with hash -1624521053, now seen corresponding path program 1 times [2018-11-18 08:34:34,104 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:34,104 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:34,105 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:34,105 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:34,105 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:34,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:34,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:34,127 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:34,127 INFO L82 PathProgramCache]: Analyzing trace with hash 95611490, now seen corresponding path program 4 times [2018-11-18 08:34:34,127 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:34,140 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:34,141 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:34,141 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:34,141 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:34,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:34,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:34,146 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:34,146 INFO L82 PathProgramCache]: Analyzing trace with hash 493091072, now seen corresponding path program 1 times [2018-11-18 08:34:34,146 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:34,146 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:34,147 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:34,147 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:34,147 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:34,157 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:34,164 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:34,710 WARN L180 SmtUtils]: Spent 466.00 ms on a formula simplification. DAG size of input: 205 DAG size of output: 156 [2018-11-18 08:34:34,812 INFO L216 LassoAnalysis]: Preferences: [2018-11-18 08:34:34,813 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-18 08:34:34,813 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-18 08:34:34,813 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-18 08:34:34,813 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-18 08:34:34,813 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-18 08:34:34,813 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-18 08:34:34,813 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-18 08:34:34,813 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration7_Lasso [2018-11-18 08:34:34,813 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-18 08:34:34,813 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-11-18 08:34:34,816 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-18 08:34:34,825 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-18 08:34:34,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-18 08:34:34,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-18 08:34:34,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-18 08:34:34,831 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-18 08:34:34,832 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-18 08:34:34,833 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-18 08:34:34,834 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-18 08:34:34,836 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-18 08:34:34,844 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-18 08:34:34,845 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-18 08:34:34,846 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-18 08:34:34,847 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-18 08:34:34,847 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-18 08:34:34,848 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-18 08:34:34,850 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-18 08:34:34,850 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-18 08:34:34,851 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-18 08:34:34,852 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-18 08:34:34,853 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-18 08:34:34,854 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-18 08:34:34,854 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-18 08:34:34,855 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-18 08:34:35,107 WARN L180 SmtUtils]: Spent 129.00 ms on a formula simplification. DAG size of input: 102 DAG size of output: 86 [2018-11-18 08:34:35,180 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-18 08:34:35,511 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-11-18 08:34:35,511 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-11-18 08:34:35,511 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-18 08:34:35,512 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,512 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,512 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,512 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,512 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,513 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,513 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,513 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,513 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-18 08:34:35,514 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,514 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,514 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,514 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,514 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,514 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,514 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,514 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,515 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-18 08:34:35,515 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,515 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,515 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,515 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,515 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,515 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,515 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,515 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,515 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-18 08:34:35,516 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,516 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,516 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,516 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,524 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:35,525 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:35,526 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,526 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-18 08:34:35,526 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,526 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,527 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,527 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,527 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,527 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,527 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,527 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,528 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-18 08:34:35,528 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,528 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,528 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,528 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,528 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,529 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,529 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,529 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,529 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-18 08:34:35,530 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,530 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,530 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,530 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,530 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,530 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,530 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,530 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,531 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-18 08:34:35,531 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,531 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,531 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,531 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,531 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,532 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,532 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,532 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,532 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-18 08:34:35,532 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,533 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,533 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,533 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,533 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,533 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,533 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,534 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,534 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-18 08:34:35,534 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,534 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,534 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,534 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,536 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:35,536 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:35,543 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,544 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-18 08:34:35,544 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,544 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,544 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,544 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,545 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:35,545 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:35,546 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,546 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-18 08:34:35,546 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,547 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,547 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,547 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,547 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,547 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,547 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,547 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,548 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-18 08:34:35,548 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,548 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,548 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,548 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,548 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,549 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,549 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,549 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,549 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-18 08:34:35,549 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,550 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,550 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,550 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,550 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,550 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,550 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,550 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,551 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-18 08:34:35,551 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,551 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,551 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,551 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,551 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,552 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,552 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,552 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,552 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-18 08:34:35,553 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,553 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,553 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,553 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,553 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:35,554 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:35,554 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,555 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-18 08:34:35,555 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,555 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,555 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,555 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,555 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,556 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,556 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,556 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,556 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-18 08:34:35,557 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,557 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,557 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,557 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,557 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,557 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,557 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,558 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,558 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-18 08:34:35,558 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,558 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,558 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,559 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,559 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,559 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,559 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,559 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,559 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-18 08:34:35,560 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,560 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,560 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,560 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,560 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,560 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,560 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,561 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,561 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-18 08:34:35,561 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,561 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,561 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,561 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,562 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,562 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,562 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,562 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,562 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-18 08:34:35,563 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,563 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,563 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,563 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,563 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,563 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,563 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,564 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,564 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-18 08:34:35,564 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,564 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:35,564 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,565 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,565 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,565 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:35,565 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:35,565 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,565 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-18 08:34:35,566 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,566 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,566 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,566 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,567 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:35,567 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:35,567 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,568 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-18 08:34:35,568 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,568 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,568 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,568 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,569 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:35,569 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:35,572 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:35,573 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-18 08:34:35,573 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:35,573 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:35,573 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:35,573 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:35,576 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:35,576 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:35,591 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-18 08:34:35,605 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2018-11-18 08:34:35,605 INFO L444 ModelExtractionUtils]: 48 out of 52 variables were initially zero. Simplification set additionally 1 variables to zero. [2018-11-18 08:34:35,605 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-18 08:34:35,606 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-18 08:34:35,606 INFO L518 LassoAnalysis]: Proved termination. [2018-11-18 08:34:35,606 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_strstr_~haystack.offset, v_rep(select #length ULTIMATE.start_main_~hay~0.base)_1) = -1*ULTIMATE.start_strstr_~haystack.offset + 1*v_rep(select #length ULTIMATE.start_main_~hay~0.base)_1 Supporting invariants [] [2018-11-18 08:34:35,705 INFO L297 tatePredicateManager]: 29 out of 31 supporting invariants were superfluous and have been removed [2018-11-18 08:34:35,709 WARN L1239 BoogieBacktranslator]: unknown boogie variable #length [2018-11-18 08:34:35,727 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:35,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:35,749 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:35,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:35,772 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:35,807 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:35,808 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-18 08:34:35,808 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 33 states and 38 transitions. cyclomatic complexity: 8 Second operand 7 states. [2018-11-18 08:34:35,869 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 33 states and 38 transitions. cyclomatic complexity: 8. Second operand 7 states. Result 45 states and 54 transitions. Complement of second has 8 states. [2018-11-18 08:34:35,869 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-18 08:34:35,870 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-18 08:34:35,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 35 transitions. [2018-11-18 08:34:35,870 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 35 transitions. Stem has 22 letters. Loop has 5 letters. [2018-11-18 08:34:35,870 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:35,870 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 35 transitions. Stem has 27 letters. Loop has 5 letters. [2018-11-18 08:34:35,871 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:35,871 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 35 transitions. Stem has 22 letters. Loop has 10 letters. [2018-11-18 08:34:35,871 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:35,871 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 45 states and 54 transitions. [2018-11-18 08:34:35,872 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:35,875 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 45 states to 42 states and 49 transitions. [2018-11-18 08:34:35,875 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 23 [2018-11-18 08:34:35,875 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2018-11-18 08:34:35,875 INFO L73 IsDeterministic]: Start isDeterministic. Operand 42 states and 49 transitions. [2018-11-18 08:34:35,876 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:35,876 INFO L705 BuchiCegarLoop]: Abstraction has 42 states and 49 transitions. [2018-11-18 08:34:35,876 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states and 49 transitions. [2018-11-18 08:34:35,877 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2018-11-18 08:34:35,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 41 states. [2018-11-18 08:34:35,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 48 transitions. [2018-11-18 08:34:35,877 INFO L728 BuchiCegarLoop]: Abstraction has 41 states and 48 transitions. [2018-11-18 08:34:35,877 INFO L608 BuchiCegarLoop]: Abstraction has 41 states and 48 transitions. [2018-11-18 08:34:35,877 INFO L442 BuchiCegarLoop]: ======== Iteration 8============ [2018-11-18 08:34:35,878 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 41 states and 48 transitions. [2018-11-18 08:34:35,878 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:35,878 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:35,878 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:35,878 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, 1] [2018-11-18 08:34:35,878 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-18 08:34:35,879 INFO L794 eck$LassoCheckResult]: Stem: 1303#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1283#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 1284#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; 1292#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 1297#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1298#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1299#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; 1306#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; 1300#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1301#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1302#L509-5 strlen_#res := strlen_~i~0; 1285#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 1286#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1287#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1288#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; 1278#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; 1279#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1289#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1293#L509-11 strlen_#res := strlen_~i~0; 1290#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 1291#L529 assume !(0 == strstr_~nl~0 % 4294967296); 1294#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 1295#L531-4 assume true; 1304#L531-1 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; 1280#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 1275#L517-4 [2018-11-18 08:34:35,879 INFO L796 eck$LassoCheckResult]: Loop: 1275#L517-4 assume true; 1268#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1269#L517-2 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; 1272#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 1275#L517-4 [2018-11-18 08:34:35,879 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:35,879 INFO L82 PathProgramCache]: Analyzing trace with hash -415128922, now seen corresponding path program 1 times [2018-11-18 08:34:35,879 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:35,879 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:35,880 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:35,880 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:35,880 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:35,889 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:35,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:35,903 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:35,903 INFO L82 PathProgramCache]: Analyzing trace with hash 3449960, now seen corresponding path program 1 times [2018-11-18 08:34:35,903 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:35,903 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:35,904 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:35,904 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:35,904 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:35,906 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:35,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:35,910 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:35,910 INFO L82 PathProgramCache]: Analyzing trace with hash 1391094925, now seen corresponding path program 1 times [2018-11-18 08:34:35,910 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:35,911 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:35,911 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:35,911 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:35,911 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:35,923 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:35,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:36,653 WARN L180 SmtUtils]: Spent 643.00 ms on a formula simplification. DAG size of input: 264 DAG size of output: 194 [2018-11-18 08:34:36,812 WARN L180 SmtUtils]: Spent 155.00 ms on a formula simplification that was a NOOP. DAG size: 145 [2018-11-18 08:34:36,814 INFO L216 LassoAnalysis]: Preferences: [2018-11-18 08:34:36,815 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-18 08:34:36,815 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-18 08:34:36,815 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-18 08:34:36,815 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-18 08:34:36,815 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-18 08:34:36,815 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-18 08:34:36,815 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-18 08:34:36,815 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration8_Lasso [2018-11-18 08:34:36,815 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-18 08:34:36,815 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-11-18 08:34:36,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-18 08:34:36,833 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-18 08:34:36,834 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-18 08:34:36,835 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-18 08:34:36,837 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-18 08:34:36,838 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-18 08:34:36,839 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-18 08:34:36,840 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-18 08:34:36,841 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-18 08:34:36,842 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-18 08:34:36,843 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-18 08:34:36,844 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-18 08:34:36,845 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-18 08:34:36,847 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-18 08:34:36,848 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-18 08:34:36,850 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-18 08:34:37,295 WARN L180 SmtUtils]: Spent 236.00 ms on a formula simplification. DAG size of input: 140 DAG size of output: 117 [2018-11-18 08:34:37,428 WARN L180 SmtUtils]: Spent 106.00 ms on a formula simplification. DAG size of input: 88 DAG size of output: 74 [2018-11-18 08:34:37,429 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-18 08:34:37,440 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-18 08:34:37,442 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-18 08:34:37,443 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-18 08:34:37,444 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-18 08:34:37,445 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-18 08:34:37,446 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-18 08:34:37,446 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-18 08:34:37,447 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-18 08:34:37,448 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-18 08:34:37,449 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-18 08:34:37,450 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-18 08:34:37,451 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-18 08:34:37,452 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-18 08:34:37,452 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-18 08:34:38,000 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-11-18 08:34:38,000 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-11-18 08:34:38,000 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-18 08:34:38,001 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,001 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,001 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,001 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,001 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,002 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,002 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,002 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,002 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-18 08:34:38,002 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,003 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,003 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,003 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,003 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,003 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,003 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,003 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,004 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-18 08:34:38,004 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,004 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,004 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,004 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,004 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,004 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,005 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,005 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,005 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-18 08:34:38,005 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,005 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,005 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,006 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,006 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,006 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,006 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,006 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,006 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-18 08:34:38,007 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,007 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,007 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,007 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,007 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,007 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,007 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,007 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,008 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-18 08:34:38,008 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,008 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,008 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,008 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,008 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:38,009 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,009 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,010 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-18 08:34:38,010 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,010 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,010 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,010 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,010 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,010 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,011 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,011 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,011 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-18 08:34:38,011 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,011 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,011 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,012 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,012 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,012 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,012 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,012 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,012 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-18 08:34:38,013 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,013 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,013 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,013 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,013 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,013 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,013 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,013 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,014 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-18 08:34:38,014 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,014 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,014 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,014 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,014 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,014 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,015 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,015 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,015 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-18 08:34:38,015 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,015 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,016 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,016 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,016 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,016 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,016 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,016 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,016 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-18 08:34:38,017 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,017 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,017 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,017 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,017 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,017 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,017 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,018 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,018 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-18 08:34:38,018 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,018 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,018 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,018 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,019 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:38,019 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,020 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,020 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-18 08:34:38,020 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,020 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,020 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,020 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,021 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,021 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,021 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,021 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,021 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-18 08:34:38,022 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,022 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:38,022 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,022 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,022 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,022 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:38,022 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:38,022 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,023 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-18 08:34:38,023 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,023 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,023 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,023 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,024 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:38,024 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,025 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,025 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-18 08:34:38,025 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,025 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,025 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,025 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,026 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:38,026 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,027 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,027 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-18 08:34:38,027 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,027 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,027 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,027 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,028 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:38,028 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,029 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,029 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-18 08:34:38,029 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,029 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,029 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,030 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,030 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:38,030 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,031 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,031 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-18 08:34:38,032 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,032 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-18 08:34:38,032 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,032 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,033 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-18 08:34:38,033 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,040 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,040 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-18 08:34:38,041 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,041 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,041 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,041 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,041 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:38,041 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,042 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,043 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-18 08:34:38,043 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,043 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-18 08:34:38,043 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,043 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,044 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-18 08:34:38,045 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,052 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,052 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-18 08:34:38,052 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,053 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,053 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,053 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,053 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:38,053 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,056 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:38,057 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-18 08:34:38,057 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:38,057 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:38,057 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:38,057 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:38,060 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:38,060 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:38,079 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-18 08:34:38,119 INFO L443 ModelExtractionUtils]: Simplification made 8 calls to the SMT solver. [2018-11-18 08:34:38,119 INFO L444 ModelExtractionUtils]: 59 out of 67 variables were initially zero. Simplification set additionally 5 variables to zero. [2018-11-18 08:34:38,119 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-18 08:34:38,120 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-18 08:34:38,120 INFO L518 LassoAnalysis]: Proved termination. [2018-11-18 08:34:38,120 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_memcmp_~d~0.offset, v_rep(select #length ULTIMATE.start_main_~hay~0.base)_2) = -1*ULTIMATE.start_memcmp_~d~0.offset + 1*v_rep(select #length ULTIMATE.start_main_~hay~0.base)_2 Supporting invariants [] [2018-11-18 08:34:38,248 INFO L297 tatePredicateManager]: 42 out of 43 supporting invariants were superfluous and have been removed [2018-11-18 08:34:38,249 WARN L1239 BoogieBacktranslator]: unknown boogie variable #length [2018-11-18 08:34:38,263 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:38,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:38,285 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:38,309 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:38,311 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:38,320 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:38,320 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-18 08:34:38,320 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 41 states and 48 transitions. cyclomatic complexity: 11 Second operand 5 states. [2018-11-18 08:34:38,366 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 41 states and 48 transitions. cyclomatic complexity: 11. Second operand 5 states. Result 102 states and 120 transitions. Complement of second has 8 states. [2018-11-18 08:34:38,366 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-18 08:34:38,367 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-18 08:34:38,367 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2018-11-18 08:34:38,367 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 45 transitions. Stem has 25 letters. Loop has 4 letters. [2018-11-18 08:34:38,367 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:38,367 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 45 transitions. Stem has 29 letters. Loop has 4 letters. [2018-11-18 08:34:38,368 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:38,368 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 45 transitions. Stem has 25 letters. Loop has 8 letters. [2018-11-18 08:34:38,368 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:38,368 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 102 states and 120 transitions. [2018-11-18 08:34:38,369 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:38,370 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 102 states to 72 states and 85 transitions. [2018-11-18 08:34:38,371 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 30 [2018-11-18 08:34:38,371 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 30 [2018-11-18 08:34:38,371 INFO L73 IsDeterministic]: Start isDeterministic. Operand 72 states and 85 transitions. [2018-11-18 08:34:38,371 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:38,371 INFO L705 BuchiCegarLoop]: Abstraction has 72 states and 85 transitions. [2018-11-18 08:34:38,371 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 72 states and 85 transitions. [2018-11-18 08:34:38,374 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 72 to 53. [2018-11-18 08:34:38,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 53 states. [2018-11-18 08:34:38,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 62 transitions. [2018-11-18 08:34:38,375 INFO L728 BuchiCegarLoop]: Abstraction has 53 states and 62 transitions. [2018-11-18 08:34:38,375 INFO L608 BuchiCegarLoop]: Abstraction has 53 states and 62 transitions. [2018-11-18 08:34:38,375 INFO L442 BuchiCegarLoop]: ======== Iteration 9============ [2018-11-18 08:34:38,375 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 53 states and 62 transitions. [2018-11-18 08:34:38,375 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:38,375 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:38,375 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:38,376 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [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, 1, 1, 1, 1] [2018-11-18 08:34:38,376 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-18 08:34:38,376 INFO L794 eck$LassoCheckResult]: Stem: 1740#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1717#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 1718#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; 1726#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 1734#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1735#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1736#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; 1744#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; 1737#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1738#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1739#L509-5 strlen_#res := strlen_~i~0; 1721#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 1722#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1723#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1724#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; 1719#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; 1720#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1725#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1731#L509-11 strlen_#res := strlen_~i~0; 1727#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 1728#L529 assume !(0 == strstr_~nl~0 % 4294967296); 1732#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 1733#L531-4 assume true; 1752#L531-1 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; 1714#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 1716#L517-4 assume true; 1751#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1748#L517-2 assume !(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6; 1711#L517-5 memcmp_#res := 0; 1712#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := 0 == strstr_#t~ret16; 1729#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 1730#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 1747#L531-4 assume true; 1741#L531-1 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; 1713#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 1708#L517-4 [2018-11-18 08:34:38,376 INFO L796 eck$LassoCheckResult]: Loop: 1708#L517-4 assume true; 1702#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1703#L517-2 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; 1706#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 1708#L517-4 [2018-11-18 08:34:38,377 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:38,377 INFO L82 PathProgramCache]: Analyzing trace with hash -202026154, now seen corresponding path program 1 times [2018-11-18 08:34:38,377 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:38,377 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:38,377 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:38,377 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:38,378 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:38,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:38,399 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-18 08:34:38,400 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-18 08:34:38,400 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-18 08:34:38,400 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-18 08:34:38,400 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:38,400 INFO L82 PathProgramCache]: Analyzing trace with hash 3449960, now seen corresponding path program 2 times [2018-11-18 08:34:38,400 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:38,400 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:38,401 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:38,401 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:38,401 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:38,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:38,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:38,467 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-18 08:34:38,467 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-18 08:34:38,467 INFO L87 Difference]: Start difference. First operand 53 states and 62 transitions. cyclomatic complexity: 15 Second operand 4 states. [2018-11-18 08:34:38,480 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 08:34:38,480 INFO L93 Difference]: Finished difference Result 55 states and 63 transitions. [2018-11-18 08:34:38,481 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-18 08:34:38,481 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 55 states and 63 transitions. [2018-11-18 08:34:38,481 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:38,482 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 55 states to 52 states and 59 transitions. [2018-11-18 08:34:38,482 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 24 [2018-11-18 08:34:38,482 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 24 [2018-11-18 08:34:38,482 INFO L73 IsDeterministic]: Start isDeterministic. Operand 52 states and 59 transitions. [2018-11-18 08:34:38,482 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:38,482 INFO L705 BuchiCegarLoop]: Abstraction has 52 states and 59 transitions. [2018-11-18 08:34:38,482 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states and 59 transitions. [2018-11-18 08:34:38,483 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 52. [2018-11-18 08:34:38,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 52 states. [2018-11-18 08:34:38,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 59 transitions. [2018-11-18 08:34:38,484 INFO L728 BuchiCegarLoop]: Abstraction has 52 states and 59 transitions. [2018-11-18 08:34:38,484 INFO L608 BuchiCegarLoop]: Abstraction has 52 states and 59 transitions. [2018-11-18 08:34:38,484 INFO L442 BuchiCegarLoop]: ======== Iteration 10============ [2018-11-18 08:34:38,484 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 52 states and 59 transitions. [2018-11-18 08:34:38,485 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:38,485 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:38,485 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:38,485 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [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, 1, 1, 1, 1] [2018-11-18 08:34:38,485 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-18 08:34:38,486 INFO L794 eck$LassoCheckResult]: Stem: 1856#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1832#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 1833#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; 1841#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 1848#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1849#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1850#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; 1859#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; 1851#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1852#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1853#L509-5 strlen_#res := strlen_~i~0; 1836#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 1837#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1838#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1839#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; 1834#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; 1835#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1840#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1845#L509-11 strlen_#res := strlen_~i~0; 1842#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 1843#L529 assume !(0 == strstr_~nl~0 % 4294967296); 1846#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 1847#L531-4 assume true; 1858#L531-1 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; 1829#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 1831#L517-4 assume true; 1821#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1822#L517-2 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; 1824#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;memcmp_#res := memcmp_~r~0; 1854#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := 0 == strstr_#t~ret16; 1855#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 1863#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 1862#L531-4 assume true; 1857#L531-1 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; 1828#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 1825#L517-4 [2018-11-18 08:34:38,486 INFO L796 eck$LassoCheckResult]: Loop: 1825#L517-4 assume true; 1819#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1820#L517-2 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; 1823#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 1825#L517-4 [2018-11-18 08:34:38,486 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:38,486 INFO L82 PathProgramCache]: Analyzing trace with hash -2041427570, now seen corresponding path program 1 times [2018-11-18 08:34:38,486 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:38,486 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:38,487 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:38,487 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:38,487 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:38,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:38,589 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:38,589 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 08:34:38,589 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/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-18 08:34:38,596 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:38,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:38,630 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:38,649 INFO L477 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-18 08:34:38,651 INFO L477 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-18 08:34:38,651 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-18 08:34:38,653 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-18 08:34:38,655 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-18 08:34:38,655 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:14, output treesize:10 [2018-11-18 08:34:38,740 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 39 treesize of output 37 [2018-11-18 08:34:38,748 INFO L477 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-18 08:34:38,748 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 2 xjuncts. [2018-11-18 08:34:38,775 INFO L477 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-18 08:34:38,776 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 4 xjuncts. [2018-11-18 08:34:38,788 INFO L267 ElimStorePlain]: Start of recursive call 2: 3 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-18 08:34:38,789 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-18 08:34:38,790 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 7 variables, input treesize:39, output treesize:3 [2018-11-18 08:34:38,806 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-18 08:34:38,821 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-18 08:34:38,821 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [12] total 16 [2018-11-18 08:34:38,821 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-18 08:34:38,822 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:38,822 INFO L82 PathProgramCache]: Analyzing trace with hash 3449960, now seen corresponding path program 3 times [2018-11-18 08:34:38,822 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:38,822 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:38,822 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:38,822 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:38,823 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:38,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:38,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:38,895 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-18 08:34:38,895 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=208, Unknown=0, NotChecked=0, Total=240 [2018-11-18 08:34:38,895 INFO L87 Difference]: Start difference. First operand 52 states and 59 transitions. cyclomatic complexity: 13 Second operand 16 states. [2018-11-18 08:34:39,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 08:34:39,848 INFO L93 Difference]: Finished difference Result 223 states and 244 transitions. [2018-11-18 08:34:39,848 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2018-11-18 08:34:39,848 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 223 states and 244 transitions. [2018-11-18 08:34:39,849 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2018-11-18 08:34:39,849 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 223 states to 181 states and 201 transitions. [2018-11-18 08:34:39,849 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 67 [2018-11-18 08:34:39,849 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 67 [2018-11-18 08:34:39,849 INFO L73 IsDeterministic]: Start isDeterministic. Operand 181 states and 201 transitions. [2018-11-18 08:34:39,850 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:39,850 INFO L705 BuchiCegarLoop]: Abstraction has 181 states and 201 transitions. [2018-11-18 08:34:39,850 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 181 states and 201 transitions. [2018-11-18 08:34:39,851 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 181 to 68. [2018-11-18 08:34:39,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 68 states. [2018-11-18 08:34:39,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 76 transitions. [2018-11-18 08:34:39,852 INFO L728 BuchiCegarLoop]: Abstraction has 68 states and 76 transitions. [2018-11-18 08:34:39,852 INFO L608 BuchiCegarLoop]: Abstraction has 68 states and 76 transitions. [2018-11-18 08:34:39,852 INFO L442 BuchiCegarLoop]: ======== Iteration 11============ [2018-11-18 08:34:39,852 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 68 states and 76 transitions. [2018-11-18 08:34:39,853 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:39,853 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:39,853 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:39,853 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 2, 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, 1, 1] [2018-11-18 08:34:39,854 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-18 08:34:39,854 INFO L794 eck$LassoCheckResult]: Stem: 2306#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 2279#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 2280#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; 2287#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 2293#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2294#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2297#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; 2312#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; 2298#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2299#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; 2316#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; 2317#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2310#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2311#L509-5 strlen_#res := strlen_~i~0; 2281#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 2282#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2283#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2284#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; 2304#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; 2318#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2303#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2288#L509-11 strlen_#res := strlen_~i~0; 2285#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 2286#L529 assume !(0 == strstr_~nl~0 % 4294967296); 2289#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 2290#L531-4 assume true; 2308#L531-1 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; 2309#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 2272#L517-4 assume true; 2267#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2268#L517-2 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; 2270#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 2330#L517-4 assume true; 2329#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2328#L517-2 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; 2319#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;memcmp_#res := memcmp_~r~0; 2305#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := 0 == strstr_#t~ret16; 2277#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 2322#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 2320#L531-4 assume true; 2307#L531-1 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; 2275#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 2271#L517-4 [2018-11-18 08:34:39,854 INFO L796 eck$LassoCheckResult]: Loop: 2271#L517-4 assume true; 2265#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2266#L517-2 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; 2269#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 2271#L517-4 [2018-11-18 08:34:39,854 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:39,854 INFO L82 PathProgramCache]: Analyzing trace with hash 1841049754, now seen corresponding path program 1 times [2018-11-18 08:34:39,854 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:39,854 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:39,855 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:39,855 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:39,855 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:39,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:39,959 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 2 proven. 9 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2018-11-18 08:34:39,959 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 08:34:39,960 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/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-18 08:34:39,977 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:40,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:40,008 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:40,018 INFO L477 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-18 08:34:40,020 INFO L477 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-18 08:34:40,020 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-18 08:34:40,024 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-18 08:34:40,028 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-18 08:34:40,028 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:24, output treesize:20 [2018-11-18 08:34:40,244 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-18 08:34:40,259 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 08:34:40,259 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11] total 22 [2018-11-18 08:34:40,260 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-18 08:34:40,260 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:40,260 INFO L82 PathProgramCache]: Analyzing trace with hash 3449960, now seen corresponding path program 4 times [2018-11-18 08:34:40,260 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:40,260 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:40,260 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:40,260 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:40,260 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:40,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:40,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:40,316 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2018-11-18 08:34:40,316 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=415, Unknown=0, NotChecked=0, Total=462 [2018-11-18 08:34:40,316 INFO L87 Difference]: Start difference. First operand 68 states and 76 transitions. cyclomatic complexity: 14 Second operand 22 states. [2018-11-18 08:34:41,601 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 08:34:41,601 INFO L93 Difference]: Finished difference Result 342 states and 385 transitions. [2018-11-18 08:34:41,602 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 46 states. [2018-11-18 08:34:41,602 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 342 states and 385 transitions. [2018-11-18 08:34:41,604 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 20 [2018-11-18 08:34:41,605 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 342 states to 334 states and 377 transitions. [2018-11-18 08:34:41,605 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 86 [2018-11-18 08:34:41,605 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 86 [2018-11-18 08:34:41,605 INFO L73 IsDeterministic]: Start isDeterministic. Operand 334 states and 377 transitions. [2018-11-18 08:34:41,605 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:41,606 INFO L705 BuchiCegarLoop]: Abstraction has 334 states and 377 transitions. [2018-11-18 08:34:41,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 334 states and 377 transitions. [2018-11-18 08:34:41,610 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 334 to 101. [2018-11-18 08:34:41,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 101 states. [2018-11-18 08:34:41,611 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 113 transitions. [2018-11-18 08:34:41,611 INFO L728 BuchiCegarLoop]: Abstraction has 101 states and 113 transitions. [2018-11-18 08:34:41,611 INFO L608 BuchiCegarLoop]: Abstraction has 101 states and 113 transitions. [2018-11-18 08:34:41,611 INFO L442 BuchiCegarLoop]: ======== Iteration 12============ [2018-11-18 08:34:41,611 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 101 states and 113 transitions. [2018-11-18 08:34:41,612 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:41,612 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:41,612 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:41,613 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 2, 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, 1, 1] [2018-11-18 08:34:41,613 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-18 08:34:41,613 INFO L794 eck$LassoCheckResult]: Stem: 2949#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 2923#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 2924#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; 2932#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 2938#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2939#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2941#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; 2972#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; 2942#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2944#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2945#L509-5 strlen_#res := strlen_~i~0; 2925#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 2926#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2940#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2964#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; 2918#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; 2919#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2929#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; 2947#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; 2960#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2946#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2933#L509-11 strlen_#res := strlen_~i~0; 2930#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 2931#L529 assume !(0 == strstr_~nl~0 % 4294967296); 2934#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 2935#L531-4 assume true; 2951#L531-1 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; 2952#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 2999#L517-4 assume true; 2998#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2997#L517-2 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; 2954#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 2955#L517-4 assume true; 2911#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2912#L517-2 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; 2914#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;memcmp_#res := memcmp_~r~0; 2948#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := 0 == strstr_#t~ret16; 2922#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 2962#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 2961#L531-4 assume true; 2950#L531-1 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; 2920#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 2915#L517-4 [2018-11-18 08:34:41,613 INFO L796 eck$LassoCheckResult]: Loop: 2915#L517-4 assume true; 2909#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2910#L517-2 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; 2913#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 2915#L517-4 [2018-11-18 08:34:41,613 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:41,613 INFO L82 PathProgramCache]: Analyzing trace with hash 353821370, now seen corresponding path program 2 times [2018-11-18 08:34:41,613 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:41,614 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:41,614 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:41,614 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:41,614 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:41,623 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:41,699 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 5 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-18 08:34:41,700 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 08:34:41,700 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/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-18 08:34:41,711 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-18 08:34:41,754 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-18 08:34:41,754 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 08:34:41,757 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:41,784 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 5 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-18 08:34:41,810 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 08:34:41,810 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 10 [2018-11-18 08:34:41,810 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-18 08:34:41,810 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:41,810 INFO L82 PathProgramCache]: Analyzing trace with hash 3449960, now seen corresponding path program 5 times [2018-11-18 08:34:41,811 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:41,811 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:41,811 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:41,811 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:41,811 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:41,816 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:41,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:41,887 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-11-18 08:34:41,887 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2018-11-18 08:34:41,887 INFO L87 Difference]: Start difference. First operand 101 states and 113 transitions. cyclomatic complexity: 19 Second operand 10 states. [2018-11-18 08:34:42,003 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 08:34:42,004 INFO L93 Difference]: Finished difference Result 168 states and 186 transitions. [2018-11-18 08:34:42,004 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-18 08:34:42,004 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 168 states and 186 transitions. [2018-11-18 08:34:42,004 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2018-11-18 08:34:42,005 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 168 states to 136 states and 152 transitions. [2018-11-18 08:34:42,005 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 42 [2018-11-18 08:34:42,005 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 42 [2018-11-18 08:34:42,005 INFO L73 IsDeterministic]: Start isDeterministic. Operand 136 states and 152 transitions. [2018-11-18 08:34:42,005 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:42,005 INFO L705 BuchiCegarLoop]: Abstraction has 136 states and 152 transitions. [2018-11-18 08:34:42,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 136 states and 152 transitions. [2018-11-18 08:34:42,007 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 136 to 101. [2018-11-18 08:34:42,008 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 101 states. [2018-11-18 08:34:42,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 112 transitions. [2018-11-18 08:34:42,008 INFO L728 BuchiCegarLoop]: Abstraction has 101 states and 112 transitions. [2018-11-18 08:34:42,008 INFO L608 BuchiCegarLoop]: Abstraction has 101 states and 112 transitions. [2018-11-18 08:34:42,008 INFO L442 BuchiCegarLoop]: ======== Iteration 13============ [2018-11-18 08:34:42,008 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 101 states and 112 transitions. [2018-11-18 08:34:42,009 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:42,009 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:42,009 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:42,010 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 3, 2, 2, 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-18 08:34:42,010 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-18 08:34:42,010 INFO L794 eck$LassoCheckResult]: Stem: 3365#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 3335#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 3336#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; 3347#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 3354#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3355#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3356#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; 3370#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; 3357#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3358#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; 3408#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; 3407#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3406#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3405#L509-5 strlen_#res := strlen_~i~0; 3404#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 3403#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3402#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3362#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; 3337#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; 3338#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3346#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; 3400#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; 3396#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3397#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3350#L509-11 strlen_#res := strlen_~i~0; 3348#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 3349#L529 assume !(0 == strstr_~nl~0 % 4294967296); 3401#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 3375#L531-4 assume true; 3367#L531-1 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; 3368#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 3416#L517-4 assume true; 3415#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3414#L517-2 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; 3372#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 3373#L517-4 assume true; 3328#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3329#L517-2 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; 3331#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;memcmp_#res := memcmp_~r~0; 3383#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := 0 == strstr_#t~ret16; 3382#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 3380#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 3379#L531-4 assume true; 3366#L531-1 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; 3339#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 3332#L517-4 [2018-11-18 08:34:42,010 INFO L796 eck$LassoCheckResult]: Loop: 3332#L517-4 assume true; 3326#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3327#L517-2 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; 3330#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 3332#L517-4 [2018-11-18 08:34:42,010 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:42,010 INFO L82 PathProgramCache]: Analyzing trace with hash 978209461, now seen corresponding path program 3 times [2018-11-18 08:34:42,011 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:42,011 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:42,011 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:42,011 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:42,011 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:42,020 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:42,168 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 1 proven. 16 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-18 08:34:42,168 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 08:34:42,168 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/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-18 08:34:42,177 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-18 08:34:42,227 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2018-11-18 08:34:42,227 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 08:34:42,231 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:42,331 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 1 proven. 16 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-18 08:34:42,356 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 08:34:42,356 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 19 [2018-11-18 08:34:42,356 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-18 08:34:42,356 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:42,356 INFO L82 PathProgramCache]: Analyzing trace with hash 3449960, now seen corresponding path program 6 times [2018-11-18 08:34:42,356 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:42,357 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:42,357 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:42,357 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:42,357 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:42,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:42,361 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:42,415 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-18 08:34:42,415 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=293, Unknown=0, NotChecked=0, Total=342 [2018-11-18 08:34:42,415 INFO L87 Difference]: Start difference. First operand 101 states and 112 transitions. cyclomatic complexity: 18 Second operand 19 states. [2018-11-18 08:34:42,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 08:34:42,586 INFO L93 Difference]: Finished difference Result 254 states and 283 transitions. [2018-11-18 08:34:42,587 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-18 08:34:42,587 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 254 states and 283 transitions. [2018-11-18 08:34:42,589 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 16 [2018-11-18 08:34:42,590 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 254 states to 227 states and 255 transitions. [2018-11-18 08:34:42,590 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 68 [2018-11-18 08:34:42,590 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 68 [2018-11-18 08:34:42,590 INFO L73 IsDeterministic]: Start isDeterministic. Operand 227 states and 255 transitions. [2018-11-18 08:34:42,590 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:42,590 INFO L705 BuchiCegarLoop]: Abstraction has 227 states and 255 transitions. [2018-11-18 08:34:42,591 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 227 states and 255 transitions. [2018-11-18 08:34:42,594 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 227 to 104. [2018-11-18 08:34:42,594 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 104 states. [2018-11-18 08:34:42,594 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 104 states to 104 states and 115 transitions. [2018-11-18 08:34:42,594 INFO L728 BuchiCegarLoop]: Abstraction has 104 states and 115 transitions. [2018-11-18 08:34:42,594 INFO L608 BuchiCegarLoop]: Abstraction has 104 states and 115 transitions. [2018-11-18 08:34:42,594 INFO L442 BuchiCegarLoop]: ======== Iteration 14============ [2018-11-18 08:34:42,595 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 104 states and 115 transitions. [2018-11-18 08:34:42,595 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:42,595 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:42,595 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:42,600 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [4, 3, 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-18 08:34:42,600 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-18 08:34:42,601 INFO L794 eck$LassoCheckResult]: Stem: 3884#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 3858#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 3859#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; 3867#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 3872#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3873#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3876#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; 3894#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; 3877#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3878#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; 3909#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; 3908#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3889#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; 3890#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; 3897#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3888#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3879#L509-5 strlen_#res := strlen_~i~0; 3860#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 3861#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3862#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3863#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; 3931#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; 3930#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3864#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; 3881#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; 3898#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3880#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3868#L509-11 strlen_#res := strlen_~i~0; 3865#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 3866#L529 assume !(0 == strstr_~nl~0 % 4294967296); 3869#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 3870#L531-4 assume true; 3895#L531-1 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; 3933#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 3852#L517-4 assume true; 3847#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3848#L517-2 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; 3850#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 3891#L517-4 assume true; 3936#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3935#L517-2 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; 3932#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;memcmp_#res := memcmp_~r~0; 3911#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := 0 == strstr_#t~ret16; 3910#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 3900#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 3899#L531-4 assume true; 3885#L531-1 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; 3855#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 3851#L517-4 [2018-11-18 08:34:42,601 INFO L796 eck$LassoCheckResult]: Loop: 3851#L517-4 assume true; 3845#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3846#L517-2 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; 3849#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 3851#L517-4 [2018-11-18 08:34:42,601 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:42,601 INFO L82 PathProgramCache]: Analyzing trace with hash 620469466, now seen corresponding path program 4 times [2018-11-18 08:34:42,601 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:42,601 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:42,602 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:42,602 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:42,602 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:42,614 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:42,738 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 2 proven. 22 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2018-11-18 08:34:42,738 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-18 08:34:42,738 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_e5905868-bb7a-41a9-83f2-528c7ab56d8b/bin-2019/uautomizer/z3 Starting monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-18 08:34:42,745 INFO L103 rtionOrderModulation]: Keeping assertion order TERMS_WITH_SMALL_CONSTANTS_FIRST [2018-11-18 08:34:42,787 INFO L249 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2018-11-18 08:34:42,787 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-18 08:34:42,789 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:42,853 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 2 proven. 22 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2018-11-18 08:34:42,868 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-18 08:34:42,868 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 19 [2018-11-18 08:34:42,868 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-11-18 08:34:42,868 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:42,868 INFO L82 PathProgramCache]: Analyzing trace with hash 3449960, now seen corresponding path program 7 times [2018-11-18 08:34:42,868 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:42,869 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:42,869 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:42,869 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:42,869 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:42,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:42,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:42,920 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-18 08:34:42,921 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=294, Unknown=0, NotChecked=0, Total=342 [2018-11-18 08:34:42,921 INFO L87 Difference]: Start difference. First operand 104 states and 115 transitions. cyclomatic complexity: 18 Second operand 19 states. [2018-11-18 08:34:43,146 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-18 08:34:43,147 INFO L93 Difference]: Finished difference Result 393 states and 442 transitions. [2018-11-18 08:34:43,149 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-18 08:34:43,149 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 393 states and 442 transitions. [2018-11-18 08:34:43,151 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 28 [2018-11-18 08:34:43,152 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 393 states to 388 states and 437 transitions. [2018-11-18 08:34:43,152 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 112 [2018-11-18 08:34:43,152 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 112 [2018-11-18 08:34:43,152 INFO L73 IsDeterministic]: Start isDeterministic. Operand 388 states and 437 transitions. [2018-11-18 08:34:43,153 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-18 08:34:43,153 INFO L705 BuchiCegarLoop]: Abstraction has 388 states and 437 transitions. [2018-11-18 08:34:43,153 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 388 states and 437 transitions. [2018-11-18 08:34:43,156 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 388 to 115. [2018-11-18 08:34:43,156 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 115 states. [2018-11-18 08:34:43,156 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 115 states to 115 states and 128 transitions. [2018-11-18 08:34:43,157 INFO L728 BuchiCegarLoop]: Abstraction has 115 states and 128 transitions. [2018-11-18 08:34:43,157 INFO L608 BuchiCegarLoop]: Abstraction has 115 states and 128 transitions. [2018-11-18 08:34:43,157 INFO L442 BuchiCegarLoop]: ======== Iteration 15============ [2018-11-18 08:34:43,157 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 115 states and 128 transitions. [2018-11-18 08:34:43,157 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2018-11-18 08:34:43,157 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-18 08:34:43,157 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-18 08:34:43,158 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [4, 3, 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-18 08:34:43,158 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-18 08:34:43,158 INFO L794 eck$LassoCheckResult]: Stem: 4555#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 4523#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;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; 4524#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; 4535#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);assume { :begin_inline_strstr } true;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;assume { :begin_inline_strlen } true;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; 4542#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 4543#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 4546#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; 4566#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; 4547#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 4548#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; 4590#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; 4588#L509-4 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 4587#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 4586#L509-5 strlen_#res := strlen_~i~0; 4584#L510 strstr_#t~ret11 := strlen_#res;assume { :end_inline_strlen } true;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;assume { :begin_inline_strlen } true;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; 4582#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 4577#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 4578#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; 4581#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; 4576#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 4575#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; 4525#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; 4526#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 4534#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; 4552#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; 4574#L509-10 assume true;call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 4551#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 4538#L509-11 strlen_#res := strlen_~i~0; 4536#L510-1 strstr_#t~ret12 := strlen_#res;assume { :end_inline_strlen } true;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 4537#L529 assume !(0 == strstr_~nl~0 % 4294967296); 4539#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 4540#L531-4 assume true; 4567#L531-1 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; 4614#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 4522#L517-4 assume true; 4517#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 4518#L517-2 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; 4520#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 4563#L517-4 assume true; 4617#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 4616#L517-2 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; 4613#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;memcmp_#res := memcmp_~r~0; 4593#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := 0 == strstr_#t~ret16; 4592#L532-2 assume !strstr_#t~short17;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~mem14;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; 4573#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 4572#L531-4 assume true; 4556#L531-1 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; 4527#L532 assume strstr_#t~short17;assume { :begin_inline_memcmp } true;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; 4521#L517-4 [2018-11-18 08:34:43,158 INFO L796 eck$LassoCheckResult]: Loop: 4521#L517-4 assume true; 4515#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 4516#L517-2 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; 4519#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem7;havoc memcmp_#t~mem8;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; 4521#L517-4 [2018-11-18 08:34:43,159 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:43,159 INFO L82 PathProgramCache]: Analyzing trace with hash 1482307258, now seen corresponding path program 5 times [2018-11-18 08:34:43,159 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:43,159 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:43,159 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:43,159 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-18 08:34:43,159 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:43,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:43,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:43,199 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:43,200 INFO L82 PathProgramCache]: Analyzing trace with hash 3449960, now seen corresponding path program 8 times [2018-11-18 08:34:43,200 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:43,200 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:43,202 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:43,202 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:43,203 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:43,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:43,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:43,207 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:43,207 INFO L82 PathProgramCache]: Analyzing trace with hash -1632446815, now seen corresponding path program 6 times [2018-11-18 08:34:43,207 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-18 08:34:43,207 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-18 08:34:43,207 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:43,207 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-18 08:34:43,207 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-18 08:34:43,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:43,240 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-18 08:34:45,354 WARN L180 SmtUtils]: Spent 2.01 s on a formula simplification. DAG size of input: 470 DAG size of output: 340 [2018-11-18 08:34:45,567 WARN L180 SmtUtils]: Spent 202.00 ms on a formula simplification that was a NOOP. DAG size: 169 [2018-11-18 08:34:45,569 INFO L216 LassoAnalysis]: Preferences: [2018-11-18 08:34:45,569 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-18 08:34:45,569 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-18 08:34:45,569 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-18 08:34:45,569 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-18 08:34:45,569 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-18 08:34:45,569 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-18 08:34:45,569 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-18 08:34:45,569 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration15_Lasso [2018-11-18 08:34:45,569 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-18 08:34:45,569 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-11-18 08:34:45,571 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-18 08:34:45,573 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-18 08:34:45,574 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-18 08:34:45,575 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-18 08:34:45,579 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-18 08:34:45,579 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-18 08:34:45,589 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-18 08:34:45,591 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-18 08:34:46,378 WARN L180 SmtUtils]: Spent 346.00 ms on a formula simplification. DAG size of input: 176 DAG size of output: 140 [2018-11-18 08:34:46,569 WARN L180 SmtUtils]: Spent 135.00 ms on a formula simplification. DAG size of input: 115 DAG size of output: 92 [2018-11-18 08:34:46,569 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-18 08:34:46,571 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-18 08:34:46,571 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-18 08:34:46,572 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-18 08:34:46,573 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-18 08:34:46,574 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-18 08:34:46,580 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-18 08:34:46,581 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-18 08:34:46,586 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-18 08:34:46,587 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-18 08:34:46,588 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-18 08:34:46,590 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-18 08:34:46,591 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-18 08:34:46,592 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-18 08:34:46,593 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-18 08:34:46,594 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-18 08:34:46,595 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-18 08:34:46,596 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-18 08:34:46,598 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-18 08:34:46,599 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-18 08:34:46,600 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-18 08:34:46,601 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-18 08:34:46,602 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-18 08:34:46,603 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-18 08:34:46,603 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-18 08:34:46,882 WARN L180 SmtUtils]: Spent 119.00 ms on a formula simplification. DAG size of input: 77 DAG size of output: 72 [2018-11-18 08:34:47,406 WARN L180 SmtUtils]: Spent 330.00 ms on a formula simplification. DAG size of input: 66 DAG size of output: 62 [2018-11-18 08:34:47,548 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-11-18 08:34:47,548 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-11-18 08:34:47,548 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-18 08:34:47,549 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,549 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:47,549 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:47,549 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,549 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,549 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:47,549 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:47,550 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,550 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-18 08:34:47,550 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,550 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:47,550 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:47,550 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,550 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,551 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:47,551 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:47,551 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,551 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-18 08:34:47,551 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,551 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:47,551 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:47,552 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,552 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,552 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:47,552 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:47,552 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,552 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-18 08:34:47,553 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,553 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:47,553 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:47,553 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,553 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,553 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:47,553 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:47,553 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,553 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-18 08:34:47,554 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,554 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:47,554 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:47,554 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,554 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,554 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:47,554 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:47,554 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,555 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-18 08:34:47,555 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,555 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:47,555 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,555 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,556 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:47,556 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:47,568 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,568 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-18 08:34:47,569 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,569 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-18 08:34:47,569 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:47,569 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,569 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,569 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-18 08:34:47,569 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-18 08:34:47,570 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,570 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-18 08:34:47,570 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,570 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:47,570 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,570 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,571 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:47,571 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:47,571 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,572 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-18 08:34:47,572 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,572 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-18 08:34:47,572 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,572 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,574 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-18 08:34:47,574 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:47,580 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,580 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-18 08:34:47,581 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,581 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:47,581 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,581 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,581 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:47,581 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:47,582 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,582 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-18 08:34:47,583 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,583 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-18 08:34:47,583 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,583 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,597 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-18 08:34:47,597 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:47,602 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,602 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-18 08:34:47,602 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,603 INFO L205 nArgumentSynthesizer]: 4 stem disjuncts [2018-11-18 08:34:47,603 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,603 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,605 INFO L402 nArgumentSynthesizer]: We have 12 Motzkin's Theorem applications. [2018-11-18 08:34:47,606 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:47,617 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-18 08:34:47,617 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-18 08:34:47,618 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-18 08:34:47,618 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-18 08:34:47,618 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-18 08:34:47,618 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-18 08:34:47,621 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-18 08:34:47,621 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-18 08:34:47,663 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-18 08:34:47,688 INFO L443 ModelExtractionUtils]: Simplification made 5 calls to the SMT solver. [2018-11-18 08:34:47,688 INFO L444 ModelExtractionUtils]: 64 out of 73 variables were initially zero. Simplification set additionally 6 variables to zero. [2018-11-18 08:34:47,688 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-18 08:34:47,689 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-18 08:34:47,689 INFO L518 LassoAnalysis]: Proved termination. [2018-11-18 08:34:47,689 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_memcmp_~s~0.offset, v_rep(select #length ULTIMATE.start_memcmp_~s~0.base)_2) = -1*ULTIMATE.start_memcmp_~s~0.offset + 1*v_rep(select #length ULTIMATE.start_memcmp_~s~0.base)_2 Supporting invariants [] [2018-11-18 08:34:48,105 INFO L297 tatePredicateManager]: 94 out of 94 supporting invariants were superfluous and have been removed [2018-11-18 08:34:48,106 WARN L1239 BoogieBacktranslator]: unknown boogie variable #length [2018-11-18 08:34:48,115 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:48,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:48,141 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:48,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:48,147 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:48,153 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:48,153 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2018-11-18 08:34:48,153 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 115 states and 128 transitions. cyclomatic complexity: 20 Second operand 4 states. [2018-11-18 08:34:48,163 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 115 states and 128 transitions. cyclomatic complexity: 20. Second operand 4 states. Result 151 states and 170 transitions. Complement of second has 7 states. [2018-11-18 08:34:48,164 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2018-11-18 08:34:48,164 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-18 08:34:48,164 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2018-11-18 08:34:48,165 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 37 transitions. Stem has 48 letters. Loop has 4 letters. [2018-11-18 08:34:48,165 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:48,165 INFO L642 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2018-11-18 08:34:48,173 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:48,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:48,215 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:48,225 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:48,227 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:48,237 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:48,237 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.1 stem predicates 2 loop predicates [2018-11-18 08:34:48,237 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 115 states and 128 transitions. cyclomatic complexity: 20 Second operand 4 states. [2018-11-18 08:34:48,246 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 115 states and 128 transitions. cyclomatic complexity: 20. Second operand 4 states. Result 151 states and 170 transitions. Complement of second has 7 states. [2018-11-18 08:34:48,247 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2018-11-18 08:34:48,247 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-18 08:34:48,247 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2018-11-18 08:34:48,247 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 37 transitions. Stem has 48 letters. Loop has 4 letters. [2018-11-18 08:34:48,248 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:48,248 INFO L642 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2018-11-18 08:34:48,262 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-18 08:34:48,290 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:48,292 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:48,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-18 08:34:48,297 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-18 08:34:48,303 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-18 08:34:48,303 INFO L152 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2018-11-18 08:34:48,303 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 115 states and 128 transitions. cyclomatic complexity: 20 Second operand 4 states. [2018-11-18 08:34:48,313 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 115 states and 128 transitions. cyclomatic complexity: 20. Second operand 4 states. Result 152 states and 171 transitions. Complement of second has 6 states. [2018-11-18 08:34:48,314 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2018-11-18 08:34:48,314 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-11-18 08:34:48,314 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2018-11-18 08:34:48,314 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 44 transitions. Stem has 48 letters. Loop has 4 letters. [2018-11-18 08:34:48,314 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:48,314 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 44 transitions. Stem has 52 letters. Loop has 4 letters. [2018-11-18 08:34:48,315 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:48,315 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 44 transitions. Stem has 48 letters. Loop has 8 letters. [2018-11-18 08:34:48,315 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-18 08:34:48,315 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 152 states and 171 transitions. [2018-11-18 08:34:48,317 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2018-11-18 08:34:48,317 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 152 states to 0 states and 0 transitions. [2018-11-18 08:34:48,317 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2018-11-18 08:34:48,317 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2018-11-18 08:34:48,318 INFO L73 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2018-11-18 08:34:48,318 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2018-11-18 08:34:48,318 INFO L705 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-18 08:34:48,318 INFO L728 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-18 08:34:48,318 INFO L608 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-18 08:34:48,318 INFO L442 BuchiCegarLoop]: ======== Iteration 16============ [2018-11-18 08:34:48,318 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2018-11-18 08:34:48,318 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2018-11-18 08:34:48,318 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2018-11-18 08:34:48,323 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 18.11 08:34:48 BoogieIcfgContainer [2018-11-18 08:34:48,324 INFO L132 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2018-11-18 08:34:48,324 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-18 08:34:48,324 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-18 08:34:48,324 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-18 08:34:48,324 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.11 08:34:30" (3/4) ... [2018-11-18 08:34:48,327 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-18 08:34:48,327 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-18 08:34:48,328 INFO L168 Benchmark]: Toolchain (without parser) took 18607.45 ms. Allocated memory was 1.0 GB in the beginning and 1.5 GB in the end (delta: 467.7 MB). Free memory was 955.5 MB in the beginning and 1.3 GB in the end (delta: -315.7 MB). Peak memory consumption was 151.9 MB. Max. memory is 11.5 GB. [2018-11-18 08:34:48,329 INFO L168 Benchmark]: CDTParser took 0.16 ms. Allocated memory is still 1.0 GB. Free memory is still 985.6 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-18 08:34:48,329 INFO L168 Benchmark]: CACSL2BoogieTranslator took 352.72 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 143.7 MB). Free memory was 955.5 MB in the beginning and 1.1 GB in the end (delta: -179.0 MB). Peak memory consumption was 35.8 MB. Max. memory is 11.5 GB. [2018-11-18 08:34:48,329 INFO L168 Benchmark]: Boogie Procedure Inliner took 28.44 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-18 08:34:48,330 INFO L168 Benchmark]: Boogie Preprocessor took 17.49 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-18 08:34:48,330 INFO L168 Benchmark]: RCFGBuilder took 262.26 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: 24.8 MB). Peak memory consumption was 24.8 MB. Max. memory is 11.5 GB. [2018-11-18 08:34:48,330 INFO L168 Benchmark]: BuchiAutomizer took 17940.27 ms. Allocated memory was 1.2 GB in the beginning and 1.5 GB in the end (delta: 324.0 MB). Free memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: -167.0 MB). Peak memory consumption was 157.1 MB. Max. memory is 11.5 GB. [2018-11-18 08:34:48,331 INFO L168 Benchmark]: Witness Printer took 3.48 ms. Allocated memory is still 1.5 GB. Free memory is still 1.3 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-18 08:34:48,333 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.16 ms. Allocated memory is still 1.0 GB. Free memory is still 985.6 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 352.72 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 143.7 MB). Free memory was 955.5 MB in the beginning and 1.1 GB in the end (delta: -179.0 MB). Peak memory consumption was 35.8 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 28.44 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 17.49 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 262.26 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: 24.8 MB). Peak memory consumption was 24.8 MB. Max. memory is 11.5 GB. * BuchiAutomizer took 17940.27 ms. Allocated memory was 1.2 GB in the beginning and 1.5 GB in the end (delta: 324.0 MB). Free memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: -167.0 MB). Peak memory consumption was 157.1 MB. Max. memory is 11.5 GB. * Witness Printer took 3.48 ms. Allocated memory is still 1.5 GB. Free memory is still 1.3 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 15 terminating modules (10 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 -1 * haystack + unknown-#length-unknown[hay] and consists of 6 locations. One deterministic module has affine ranking function -1 * d + unknown-#length-unknown[hay] and consists of 5 locations. One nondeterministic module has affine ranking function -1 * s + unknown-#length-unknown[s] and consists of 4 locations. 10 modules have a trivial ranking function, the largest among these consists of 22 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 17.9s and 16 iterations. TraceHistogramMax:4. Analysis of lassos took 13.8s. Construction of modules took 1.1s. Büchi inclusion checks took 2.7s. Highest rank in rank-based complementation 3. Minimization of det autom 1. Minimization of nondet autom 14. Automata minimization 0.0s AutomataMinimizationTime, 14 MinimizatonAttempts, 897 StatesRemovedByMinimization, 10 NontrivialMinimizations. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had 115 states and ocurred in iteration 14. Nontrivial modules had stage [4, 0, 1, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 632 SDtfs, 1695 SDslu, 2960 SDs, 0 SdLazy, 2362 SolverSat, 226 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 1.1s Time LassoAnalysisResults: nont0 unkn0 SFLI0 SFLT0 conc0 concLT0 SILN0 SILU10 SILI0 SILT0 lasso5 LassoPreprocessingBenchmarks: Lassos: inital288 mio100 ax100 hnf99 lsp88 ukn86 mio100 lsp43 div107 bol100 ite100 ukn100 eq187 hnf85 smp97 dnf155 smp89 tf100 neg99 sie101 LassoTerminationAnalysisBenchmarks: ConstraintsSatisfiability: unsat Degree: 0 Time: 14ms VariablesStem: 14 VariablesLoop: 10 DisjunctsStem: 4 DisjunctsLoop: 1 SupportingInvariants: 2 MotzkinApplications: 12 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...