./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 1dbac8bc Calling Ultimate with: java -Dosgi.configuration.area=/tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/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_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/bin-2019/uautomizer/config/svcomp-Termination-64bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/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-1dbac8b [2018-11-10 08:36:12,649 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-10 08:36:12,651 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-10 08:36:12,660 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-10 08:36:12,660 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-10 08:36:12,660 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-10 08:36:12,661 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-10 08:36:12,662 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-10 08:36:12,663 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-10 08:36:12,663 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-10 08:36:12,664 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-10 08:36:12,664 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-10 08:36:12,665 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-10 08:36:12,666 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-10 08:36:12,666 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-10 08:36:12,667 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-10 08:36:12,667 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-10 08:36:12,669 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-10 08:36:12,670 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-10 08:36:12,671 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-10 08:36:12,672 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-10 08:36:12,672 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-10 08:36:12,674 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-10 08:36:12,674 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-10 08:36:12,674 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-10 08:36:12,675 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-10 08:36:12,676 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-10 08:36:12,676 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-10 08:36:12,677 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-10 08:36:12,678 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-10 08:36:12,678 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-10 08:36:12,678 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-10 08:36:12,678 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-10 08:36:12,679 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-10 08:36:12,679 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-10 08:36:12,680 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-10 08:36:12,680 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/bin-2019/uautomizer/config/svcomp-Termination-64bit-Automizer_Default.epf [2018-11-10 08:36:12,692 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-10 08:36:12,692 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-10 08:36:12,693 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-10 08:36:12,694 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-10 08:36:12,694 INFO L133 SettingsManager]: * Use SBE=true [2018-11-10 08:36:12,694 INFO L131 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2018-11-10 08:36:12,694 INFO L133 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2018-11-10 08:36:12,694 INFO L133 SettingsManager]: * Use old map elimination=false [2018-11-10 08:36:12,694 INFO L133 SettingsManager]: * Use external solver (rank synthesis)=false [2018-11-10 08:36:12,695 INFO L133 SettingsManager]: * Use only trivial implications for array writes=true [2018-11-10 08:36:12,695 INFO L133 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2018-11-10 08:36:12,695 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-10 08:36:12,695 INFO L133 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2018-11-10 08:36:12,695 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-10 08:36:12,695 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-10 08:36:12,696 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2018-11-10 08:36:12,696 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2018-11-10 08:36:12,696 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2018-11-10 08:36:12,696 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-10 08:36:12,696 INFO L133 SettingsManager]: * Assume nondeterminstic values are in range=false [2018-11-10 08:36:12,696 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2018-11-10 08:36:12,697 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-10 08:36:12,697 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-10 08:36:12,697 INFO L133 SettingsManager]: * To the following directory=/home/matthias/ultimate/dump [2018-11-10 08:36:12,697 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-10 08:36:12,697 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-10 08:36:12,697 INFO L133 SettingsManager]: * Dump automata to the following directory=/home/matthias/ultimate/dump/auto [2018-11-10 08:36:12,698 INFO L131 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2018-11-10 08:36:12,698 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_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/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-10 08:36:12,722 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-10 08:36:12,731 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-10 08:36:12,734 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-10 08:36:12,735 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-10 08:36:12,736 INFO L276 PluginConnector]: CDTParser initialized [2018-11-10 08:36:12,736 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/bin-2019/uautomizer/../../sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i [2018-11-10 08:36:12,781 INFO L218 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/bin-2019/uautomizer/data/9cc44af74/aaf6eb8553944f3c9b30b4eb337a884f/FLAG670dfe153 [2018-11-10 08:36:13,138 INFO L298 CDTParser]: Found 1 translation units. [2018-11-10 08:36:13,139 INFO L158 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i [2018-11-10 08:36:13,145 INFO L346 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/bin-2019/uautomizer/data/9cc44af74/aaf6eb8553944f3c9b30b4eb337a884f/FLAG670dfe153 [2018-11-10 08:36:13,155 INFO L354 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/bin-2019/uautomizer/data/9cc44af74/aaf6eb8553944f3c9b30b4eb337a884f [2018-11-10 08:36:13,157 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-10 08:36:13,158 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-10 08:36:13,158 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-10 08:36:13,159 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-10 08:36:13,161 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-10 08:36:13,161 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,163 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4205049b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13, skipping insertion in model container [2018-11-10 08:36:13,163 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,169 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-10 08:36:13,195 INFO L174 MainTranslator]: Built tables and reachable declarations [2018-11-10 08:36:13,391 INFO L202 PostProcessor]: Analyzing one entry point: main [2018-11-10 08:36:13,399 INFO L189 MainTranslator]: Completed pre-run [2018-11-10 08:36:13,434 INFO L202 PostProcessor]: Analyzing one entry point: main [2018-11-10 08:36:13,465 INFO L193 MainTranslator]: Completed translation [2018-11-10 08:36:13,465 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13 WrapperNode [2018-11-10 08:36:13,465 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-10 08:36:13,466 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-10 08:36:13,466 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-10 08:36:13,466 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-10 08:36:13,510 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,520 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,535 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-10 08:36:13,536 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-10 08:36:13,536 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-10 08:36:13,536 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-10 08:36:13,541 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,542 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,544 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,544 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,548 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,551 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,553 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (1/1) ... [2018-11-10 08:36:13,554 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-10 08:36:13,554 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-10 08:36:13,555 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-10 08:36:13,555 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-10 08:36:13,555 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/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-10 08:36:13,593 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-10 08:36:13,593 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-10 08:36:13,593 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-10 08:36:13,593 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-10 08:36:13,844 INFO L341 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-10 08:36:13,845 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.11 08:36:13 BoogieIcfgContainer [2018-11-10 08:36:13,845 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-10 08:36:13,845 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2018-11-10 08:36:13,845 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2018-11-10 08:36:13,847 INFO L276 PluginConnector]: BuchiAutomizer initialized [2018-11-10 08:36:13,848 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-10 08:36:13,848 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 10.11 08:36:13" (1/3) ... [2018-11-10 08:36:13,849 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@48951d85 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.11 08:36:13, skipping insertion in model container [2018-11-10 08:36:13,849 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-10 08:36:13,849 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 08:36:13" (2/3) ... [2018-11-10 08:36:13,849 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@48951d85 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.11 08:36:13, skipping insertion in model container [2018-11-10 08:36:13,849 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-10 08:36:13,850 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.11 08:36:13" (3/3) ... [2018-11-10 08:36:13,851 INFO L375 chiAutomizerObserver]: Analyzing ICFG strstr_true-termination.c.i [2018-11-10 08:36:13,882 INFO L135 ementStrategyFactory]: Using default assertion order modulation [2018-11-10 08:36:13,882 INFO L374 BuchiCegarLoop]: Interprodecural is true [2018-11-10 08:36:13,882 INFO L375 BuchiCegarLoop]: Hoare is false [2018-11-10 08:36:13,882 INFO L376 BuchiCegarLoop]: Compute interpolants for ForwardPredicates [2018-11-10 08:36:13,883 INFO L377 BuchiCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-10 08:36:13,883 INFO L378 BuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-10 08:36:13,883 INFO L379 BuchiCegarLoop]: Difference is false [2018-11-10 08:36:13,883 INFO L380 BuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-10 08:36:13,883 INFO L383 BuchiCegarLoop]: ======== Iteration 0==of CEGAR loop == BuchiCegarLoop======== [2018-11-10 08:36:13,892 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states. [2018-11-10 08:36:13,907 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 25 [2018-11-10 08:36:13,907 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:13,908 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:13,912 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:13,912 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-10 08:36:13,912 INFO L442 BuchiCegarLoop]: ======== Iteration 1============ [2018-11-10 08:36:13,912 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states. [2018-11-10 08:36:13,915 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 25 [2018-11-10 08:36:13,915 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:13,915 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:13,916 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:13,916 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-10 08:36:13,923 INFO L793 eck$LassoCheckResult]: Stem: 41#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; 16#L541true assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 40#L543true SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 13#L543-1true main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 37#L545true assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 32#L547true SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 35#L547-1true 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; 22#L508true assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 34#L509-5true [2018-11-10 08:36:13,923 INFO L795 eck$LassoCheckResult]: Loop: 34#L509-5true assume true; 43#L509-1true SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 46#L509-2true assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 30#L509-4true strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 34#L509-5true [2018-11-10 08:36:13,928 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:13,928 INFO L82 PathProgramCache]: Analyzing trace with hash 1149475243, now seen corresponding path program 1 times [2018-11-10 08:36:13,930 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:13,930 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:13,967 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:13,967 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:13,967 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:14,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:14,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:14,032 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:14,032 INFO L82 PathProgramCache]: Analyzing trace with hash 1694276, now seen corresponding path program 1 times [2018-11-10 08:36:14,032 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:14,032 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:14,033 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:14,033 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:14,033 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:14,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:14,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:14,043 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:14,043 INFO L82 PathProgramCache]: Analyzing trace with hash -1065054482, now seen corresponding path program 1 times [2018-11-10 08:36:14,043 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:14,044 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:14,044 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:14,044 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:14,045 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:14,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:14,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:14,494 WARN L179 SmtUtils]: Spent 340.00 ms on a formula simplification. DAG size of input: 131 DAG size of output: 114 [2018-11-10 08:36:14,598 WARN L179 SmtUtils]: Spent 100.00 ms on a formula simplification that was a NOOP. DAG size: 94 [2018-11-10 08:36:14,606 INFO L214 LassoAnalysis]: Preferences: [2018-11-10 08:36:14,607 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-10 08:36:14,608 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-10 08:36:14,608 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-10 08:36:14,608 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-10 08:36:14,608 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-10 08:36:14,608 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-10 08:36:14,608 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-10 08:36:14,608 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration1_Lasso [2018-11-10 08:36:14,609 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-10 08:36:14,609 INFO L280 LassoAnalysis]: Starting lasso preprocessing... [2018-11-10 08:36:14,631 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,638 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,640 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,878 WARN L179 SmtUtils]: Spent 171.00 ms on a formula simplification. DAG size of input: 91 DAG size of output: 87 [2018-11-10 08:36:14,947 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,949 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,952 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,953 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,955 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,956 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,957 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,959 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,961 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,962 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,964 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,965 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,966 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,967 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,968 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,969 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,972 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,973 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,974 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,975 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,976 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,978 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,979 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,980 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:14,981 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:15,305 INFO L298 LassoAnalysis]: Preprocessing complete. [2018-11-10 08:36:15,308 INFO L496 LassoAnalysis]: Using template 'affine'. [2018-11-10 08:36:15,309 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-10 08:36:15,310 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:15,310 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:15,311 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:15,311 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:15,311 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:15,312 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:15,312 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:15,314 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:15,314 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-10 08:36:15,315 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:15,315 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:15,315 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:15,315 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:15,315 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:15,316 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:15,316 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:15,317 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:15,317 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-10 08:36:15,318 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:15,318 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:15,318 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:15,318 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:15,321 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:15,321 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:15,329 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:15,330 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-10 08:36:15,330 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:15,331 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:15,331 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:15,331 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:15,333 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:15,333 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:15,341 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:15,341 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-10 08:36:15,342 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:15,342 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:15,342 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:15,342 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:15,344 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:15,344 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:15,347 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:15,347 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-10 08:36:15,348 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:15,348 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:15,348 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:15,348 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:15,350 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:15,350 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:15,356 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:15,356 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-10 08:36:15,356 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:15,357 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:15,357 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:15,357 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:15,359 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:15,359 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:15,363 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:15,364 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-10 08:36:15,364 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:15,364 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 08:36:15,364 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:15,364 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:15,366 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 08:36:15,366 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:15,376 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:15,376 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-10 08:36:15,377 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:15,377 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:15,377 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:15,377 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:15,380 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:15,381 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:15,412 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-10 08:36:15,442 INFO L443 ModelExtractionUtils]: Simplification made 6 calls to the SMT solver. [2018-11-10 08:36:15,442 INFO L444 ModelExtractionUtils]: 31 out of 37 variables were initially zero. Simplification set additionally 3 variables to zero. [2018-11-10 08:36:15,444 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-10 08:36:15,445 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-10 08:36:15,446 INFO L517 LassoAnalysis]: Proved termination. [2018-11-10 08:36:15,446 INFO L519 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_strlen_~s.offset, v_rep(select #length ULTIMATE.start_#Ultimate.alloc_#res.base)_1) = -1*ULTIMATE.start_strlen_~s.offset + 1*v_rep(select #length ULTIMATE.start_#Ultimate.alloc_#res.base)_1 Supporting invariants [] [2018-11-10 08:36:15,483 INFO L297 tatePredicateManager]: 8 out of 9 supporting invariants were superfluous and have been removed [2018-11-10 08:36:15,488 WARN L387 cessorBacktranslator]: Unfinished Backtranslation: Nested struct field access of VarList #Ultimate.alloc_#res : $Pointer$ not handled [2018-11-10 08:36:15,489 WARN L1239 BoogieBacktranslator]: unknown boogie variable #length [2018-11-10 08:36:15,490 WARN L1239 BoogieBacktranslator]: unknown boogie variable #Ultimate.alloc_#res [2018-11-10 08:36:15,511 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:15,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:15,531 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:15,565 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:15,566 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:15,582 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-10 08:36:15,592 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.3 stem predicates 2 loop predicates [2018-11-10 08:36:15,593 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 47 states. Second operand 6 states. [2018-11-10 08:36:15,677 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 47 states.. Second operand 6 states. Result 126 states and 165 transitions. Complement of second has 10 states. [2018-11-10 08:36:15,678 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 7 states 3 stem states 2 non-accepting loop states 1 accepting loop states [2018-11-10 08:36:15,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-10 08:36:15,680 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 110 transitions. [2018-11-10 08:36:15,681 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 7 states and 110 transitions. Stem has 9 letters. Loop has 4 letters. [2018-11-10 08:36:15,682 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:15,682 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 7 states and 110 transitions. Stem has 13 letters. Loop has 4 letters. [2018-11-10 08:36:15,683 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:15,683 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 7 states and 110 transitions. Stem has 9 letters. Loop has 8 letters. [2018-11-10 08:36:15,683 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:15,684 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 126 states and 165 transitions. [2018-11-10 08:36:15,687 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 42 [2018-11-10 08:36:15,691 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 126 states to 71 states and 86 transitions. [2018-11-10 08:36:15,691 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 66 [2018-11-10 08:36:15,692 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 67 [2018-11-10 08:36:15,692 INFO L73 IsDeterministic]: Start isDeterministic. Operand 71 states and 86 transitions. [2018-11-10 08:36:15,692 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:15,692 INFO L705 BuchiCegarLoop]: Abstraction has 71 states and 86 transitions. [2018-11-10 08:36:15,702 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states and 86 transitions. [2018-11-10 08:36:15,710 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 71. [2018-11-10 08:36:15,710 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 71 states. [2018-11-10 08:36:15,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 86 transitions. [2018-11-10 08:36:15,711 INFO L728 BuchiCegarLoop]: Abstraction has 71 states and 86 transitions. [2018-11-10 08:36:15,711 INFO L608 BuchiCegarLoop]: Abstraction has 71 states and 86 transitions. [2018-11-10 08:36:15,711 INFO L442 BuchiCegarLoop]: ======== Iteration 2============ [2018-11-10 08:36:15,712 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 71 states and 86 transitions. [2018-11-10 08:36:15,712 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 42 [2018-11-10 08:36:15,712 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:15,713 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:15,713 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:15,713 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-10 08:36:15,713 INFO L793 eck$LassoCheckResult]: Stem: 330#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 294#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; 295#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 306#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 301#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 302#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 324#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 325#L547-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; 313#L508 assume strlen_~s.base == 0 && strlen_~s.offset == 0;strlen_#res := 0; 303#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; 304#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 312#L509-12 [2018-11-10 08:36:15,713 INFO L795 eck$LassoCheckResult]: Loop: 312#L509-12 assume true; 317#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 296#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 298#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 312#L509-12 [2018-11-10 08:36:15,714 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:15,714 INFO L82 PathProgramCache]: Analyzing trace with hash 839112782, now seen corresponding path program 1 times [2018-11-10 08:36:15,714 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:15,714 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:15,714 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:15,715 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:15,715 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:15,722 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:15,753 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-10 08:36:15,755 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 08:36:15,755 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-10 08:36:15,756 INFO L798 eck$LassoCheckResult]: stem already infeasible [2018-11-10 08:36:15,756 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:15,756 INFO L82 PathProgramCache]: Analyzing trace with hash 2402308, now seen corresponding path program 1 times [2018-11-10 08:36:15,756 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:15,756 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:15,757 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:15,757 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:15,757 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:15,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:15,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:15,788 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-10 08:36:15,788 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-10 08:36:15,789 INFO L87 Difference]: Start difference. First operand 71 states and 86 transitions. cyclomatic complexity: 20 Second operand 4 states. [2018-11-10 08:36:15,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 08:36:15,815 INFO L93 Difference]: Finished difference Result 44 states and 51 transitions. [2018-11-10 08:36:15,816 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-10 08:36:15,816 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 44 states and 51 transitions. [2018-11-10 08:36:15,817 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 21 [2018-11-10 08:36:15,817 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 44 states to 44 states and 51 transitions. [2018-11-10 08:36:15,817 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 40 [2018-11-10 08:36:15,818 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 40 [2018-11-10 08:36:15,818 INFO L73 IsDeterministic]: Start isDeterministic. Operand 44 states and 51 transitions. [2018-11-10 08:36:15,818 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:15,818 INFO L705 BuchiCegarLoop]: Abstraction has 44 states and 51 transitions. [2018-11-10 08:36:15,818 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states and 51 transitions. [2018-11-10 08:36:15,820 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 44. [2018-11-10 08:36:15,820 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 44 states. [2018-11-10 08:36:15,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 51 transitions. [2018-11-10 08:36:15,820 INFO L728 BuchiCegarLoop]: Abstraction has 44 states and 51 transitions. [2018-11-10 08:36:15,820 INFO L608 BuchiCegarLoop]: Abstraction has 44 states and 51 transitions. [2018-11-10 08:36:15,820 INFO L442 BuchiCegarLoop]: ======== Iteration 3============ [2018-11-10 08:36:15,821 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 44 states and 51 transitions. [2018-11-10 08:36:15,821 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 21 [2018-11-10 08:36:15,821 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:15,821 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:15,822 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:15,822 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-11-10 08:36:15,822 INFO L793 eck$LassoCheckResult]: Stem: 450#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 422#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; 423#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 431#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 426#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 427#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 445#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 446#L547-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; 436#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 437#L509-5 assume true; 448#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 452#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 449#L509-6 strlen_#res := strlen_~i~0; 424#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; 425#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 434#L509-12 [2018-11-10 08:36:15,822 INFO L795 eck$LassoCheckResult]: Loop: 434#L509-12 assume true; 438#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 417#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 419#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 434#L509-12 [2018-11-10 08:36:15,822 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:15,822 INFO L82 PathProgramCache]: Analyzing trace with hash -1315195239, now seen corresponding path program 1 times [2018-11-10 08:36:15,822 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:15,823 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:15,823 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:15,823 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:15,823 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:15,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:15,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:15,843 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:15,843 INFO L82 PathProgramCache]: Analyzing trace with hash 2402308, now seen corresponding path program 2 times [2018-11-10 08:36:15,843 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:15,843 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:15,844 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:15,844 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:15,844 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:15,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:15,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:15,850 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:15,850 INFO L82 PathProgramCache]: Analyzing trace with hash 2035503772, now seen corresponding path program 1 times [2018-11-10 08:36:15,850 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:15,850 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:15,851 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:15,851 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:15,851 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:15,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:15,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:16,237 WARN L179 SmtUtils]: Spent 307.00 ms on a formula simplification. DAG size of input: 161 DAG size of output: 133 [2018-11-10 08:36:16,314 INFO L214 LassoAnalysis]: Preferences: [2018-11-10 08:36:16,314 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-10 08:36:16,314 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-10 08:36:16,314 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-10 08:36:16,314 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-10 08:36:16,314 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-10 08:36:16,314 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-10 08:36:16,314 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-10 08:36:16,315 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration3_Lasso [2018-11-10 08:36:16,315 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-10 08:36:16,315 INFO L280 LassoAnalysis]: Starting lasso preprocessing... [2018-11-10 08:36:16,318 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,324 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,325 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,326 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,327 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,328 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,329 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,330 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,331 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,332 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,333 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,334 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,335 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,336 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,337 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,339 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,340 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,539 WARN L179 SmtUtils]: Spent 134.00 ms on a formula simplification. DAG size of input: 96 DAG size of output: 88 [2018-11-10 08:36:16,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-10 08:36:16,583 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,585 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:16,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-10 08:36:16,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-10 08:36:16,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-10 08:36:16,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-10 08:36:16,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-10 08:36:16,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-10 08:36:16,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-10 08:36:16,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-10 08:36:16,917 INFO L298 LassoAnalysis]: Preprocessing complete. [2018-11-10 08:36:16,917 INFO L496 LassoAnalysis]: Using template 'affine'. [2018-11-10 08:36:16,917 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-10 08:36:16,918 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,918 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,918 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,918 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,918 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,919 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,919 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,921 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,922 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-10 08:36:16,922 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,922 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,922 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,922 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,922 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,922 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,923 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,923 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,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-10 08:36:16,923 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,923 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,923 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,923 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,923 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,924 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,924 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,924 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,928 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-10 08:36:16,928 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,928 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,929 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,929 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,929 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,929 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,929 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,930 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,930 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-10 08:36:16,930 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,931 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,931 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,931 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,931 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:16,932 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:16,933 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,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-10 08:36:16,934 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,934 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,934 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,934 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,934 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,934 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,934 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,935 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,939 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-10 08:36:16,940 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,940 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,940 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,940 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,941 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:16,941 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:16,942 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,942 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-10 08:36:16,942 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,942 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,943 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,943 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,946 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,947 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,947 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,947 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,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-10 08:36:16,948 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,948 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,948 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,948 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,948 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,949 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,949 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,949 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,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-10 08:36:16,950 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,950 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,950 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,950 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,950 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,951 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,951 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,951 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,951 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-10 08:36:16,952 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,952 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,952 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,952 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,952 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,953 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,953 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,953 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,953 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-10 08:36:16,954 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,954 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,954 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,954 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,954 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,954 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,955 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,959 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,959 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-10 08:36:16,960 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,960 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,960 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,960 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,960 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,960 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,961 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,961 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,961 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-10 08:36:16,962 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,962 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,962 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,962 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,962 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,962 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,962 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,963 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,965 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-10 08:36:16,966 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,966 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,966 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,966 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,967 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:16,967 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:16,968 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,969 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-10 08:36:16,969 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,969 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:16,969 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,969 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,969 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,969 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:16,970 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:16,970 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,970 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-10 08:36:16,971 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,971 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,971 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,971 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,972 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:16,972 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:16,973 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,973 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-10 08:36:16,974 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,974 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 08:36:16,974 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,974 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,976 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 08:36:16,976 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:16,982 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,983 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-10 08:36:16,983 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,983 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,983 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,984 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,984 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:16,984 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:16,985 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,986 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-10 08:36:16,986 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,986 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 08:36:16,986 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,986 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,989 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 08:36:16,989 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:16,997 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:16,997 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-10 08:36:16,998 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:16,998 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:16,998 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:16,998 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:16,999 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:16,999 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:17,000 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:17,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-10 08:36:17,001 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:17,001 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:17,001 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:17,001 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:17,003 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:17,004 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:17,036 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-10 08:36:17,056 INFO L443 ModelExtractionUtils]: Simplification made 5 calls to the SMT solver. [2018-11-10 08:36:17,056 INFO L444 ModelExtractionUtils]: 38 out of 43 variables were initially zero. Simplification set additionally 2 variables to zero. [2018-11-10 08:36:17,056 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-10 08:36:17,057 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-10 08:36:17,058 INFO L517 LassoAnalysis]: Proved termination. [2018-11-10 08:36:17,058 INFO L519 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-10 08:36:17,091 INFO L297 tatePredicateManager]: 11 out of 12 supporting invariants were superfluous and have been removed [2018-11-10 08:36:17,093 WARN L1239 BoogieBacktranslator]: unknown boogie variable #length [2018-11-10 08:36:17,124 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:17,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:17,142 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:17,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:17,168 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:17,195 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-10 08:36:17,196 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-10 08:36:17,196 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 44 states and 51 transitions. cyclomatic complexity: 10 Second operand 7 states. [2018-11-10 08:36:17,352 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 44 states and 51 transitions. cyclomatic complexity: 10. Second operand 7 states. Result 89 states and 104 transitions. Complement of second has 9 states. [2018-11-10 08:36:17,355 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 7 states 4 stem states 2 non-accepting loop states 1 accepting loop states [2018-11-10 08:36:17,355 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-10 08:36:17,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 70 transitions. [2018-11-10 08:36:17,355 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 7 states and 70 transitions. Stem has 15 letters. Loop has 4 letters. [2018-11-10 08:36:17,356 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:17,356 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 7 states and 70 transitions. Stem has 19 letters. Loop has 4 letters. [2018-11-10 08:36:17,356 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:17,356 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 7 states and 70 transitions. Stem has 15 letters. Loop has 8 letters. [2018-11-10 08:36:17,356 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:17,357 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 89 states and 104 transitions. [2018-11-10 08:36:17,358 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 34 [2018-11-10 08:36:17,358 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 89 states to 67 states and 78 transitions. [2018-11-10 08:36:17,358 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 58 [2018-11-10 08:36:17,359 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 59 [2018-11-10 08:36:17,359 INFO L73 IsDeterministic]: Start isDeterministic. Operand 67 states and 78 transitions. [2018-11-10 08:36:17,359 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:17,359 INFO L705 BuchiCegarLoop]: Abstraction has 67 states and 78 transitions. [2018-11-10 08:36:17,361 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states and 78 transitions. [2018-11-10 08:36:17,362 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 47. [2018-11-10 08:36:17,363 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-10 08:36:17,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 55 transitions. [2018-11-10 08:36:17,363 INFO L728 BuchiCegarLoop]: Abstraction has 47 states and 55 transitions. [2018-11-10 08:36:17,363 INFO L608 BuchiCegarLoop]: Abstraction has 47 states and 55 transitions. [2018-11-10 08:36:17,363 INFO L442 BuchiCegarLoop]: ======== Iteration 4============ [2018-11-10 08:36:17,363 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states and 55 transitions. [2018-11-10 08:36:17,364 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 17 [2018-11-10 08:36:17,364 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:17,364 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:17,365 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:17,365 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:17,365 INFO L793 eck$LassoCheckResult]: Stem: 729#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 695#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; 696#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 706#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 701#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 702#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 724#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 725#L547-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; 713#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 714#L509-5 assume true; 726#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 731#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 728#L509-6 strlen_#res := strlen_~i~0; 703#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; 704#L508-2 assume strlen_~s.base == 0 && strlen_~s.offset == 0;strlen_#res := 0; 707#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; 708#L529 assume !(strstr_~nl~0 % 4294967296 == 0); 710#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 711#L531-4 [2018-11-10 08:36:17,365 INFO L795 eck$LassoCheckResult]: Loop: 711#L531-4 assume true; 730#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 693#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 694#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 705#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 709#L532-3 assume !strstr_#t~short17; 715#L532-5 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 719#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 711#L531-4 [2018-11-10 08:36:17,365 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:17,365 INFO L82 PathProgramCache]: Analyzing trace with hash 2005278508, now seen corresponding path program 1 times [2018-11-10 08:36:17,365 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:17,366 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:17,366 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,366 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:17,366 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,384 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:17,414 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-10 08:36:17,414 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 08:36:17,414 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-10 08:36:17,415 INFO L798 eck$LassoCheckResult]: stem already infeasible [2018-11-10 08:36:17,415 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:17,415 INFO L82 PathProgramCache]: Analyzing trace with hash -1197642521, now seen corresponding path program 1 times [2018-11-10 08:36:17,415 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:17,415 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:17,416 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,416 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:17,416 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,425 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:17,428 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:17,536 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-10 08:36:17,536 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-10 08:36:17,536 INFO L87 Difference]: Start difference. First operand 47 states and 55 transitions. cyclomatic complexity: 11 Second operand 5 states. [2018-11-10 08:36:17,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 08:36:17,566 INFO L93 Difference]: Finished difference Result 47 states and 54 transitions. [2018-11-10 08:36:17,566 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-10 08:36:17,567 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 47 states and 54 transitions. [2018-11-10 08:36:17,567 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 17 [2018-11-10 08:36:17,567 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 47 states to 47 states and 54 transitions. [2018-11-10 08:36:17,568 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 39 [2018-11-10 08:36:17,568 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 39 [2018-11-10 08:36:17,568 INFO L73 IsDeterministic]: Start isDeterministic. Operand 47 states and 54 transitions. [2018-11-10 08:36:17,568 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:17,568 INFO L705 BuchiCegarLoop]: Abstraction has 47 states and 54 transitions. [2018-11-10 08:36:17,568 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states and 54 transitions. [2018-11-10 08:36:17,570 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 47. [2018-11-10 08:36:17,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-10 08:36:17,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 54 transitions. [2018-11-10 08:36:17,570 INFO L728 BuchiCegarLoop]: Abstraction has 47 states and 54 transitions. [2018-11-10 08:36:17,570 INFO L608 BuchiCegarLoop]: Abstraction has 47 states and 54 transitions. [2018-11-10 08:36:17,571 INFO L442 BuchiCegarLoop]: ======== Iteration 5============ [2018-11-10 08:36:17,571 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states and 54 transitions. [2018-11-10 08:36:17,574 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 17 [2018-11-10 08:36:17,574 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:17,574 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:17,575 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:17,575 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:17,575 INFO L793 eck$LassoCheckResult]: Stem: 835#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 805#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; 806#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 814#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 807#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 808#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 830#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 831#L547-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; 819#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 820#L509-5 assume true; 832#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 837#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 834#L509-6 strlen_#res := strlen_~i~0; 809#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; 810#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 821#L509-12 assume true; 823#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 799#L509-9 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 800#L509-13 strlen_#res := strlen_~i~0; 812#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; 813#L529 assume !(strstr_~nl~0 % 4294967296 == 0); 816#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 817#L531-4 [2018-11-10 08:36:17,575 INFO L795 eck$LassoCheckResult]: Loop: 817#L531-4 assume true; 836#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 803#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 804#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 811#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 818#L532-3 assume !strstr_#t~short17; 824#L532-5 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 825#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 817#L531-4 [2018-11-10 08:36:17,576 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:17,576 INFO L82 PathProgramCache]: Analyzing trace with hash -952046719, now seen corresponding path program 1 times [2018-11-10 08:36:17,576 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:17,576 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:17,576 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,576 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:17,576 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:17,608 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-10 08:36:17,608 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 08:36:17,608 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-10 08:36:17,608 INFO L798 eck$LassoCheckResult]: stem already infeasible [2018-11-10 08:36:17,609 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:17,609 INFO L82 PathProgramCache]: Analyzing trace with hash -1197642521, now seen corresponding path program 2 times [2018-11-10 08:36:17,609 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:17,609 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:17,609 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,610 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:17,610 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,612 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:17,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:17,678 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-10 08:36:17,678 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-10 08:36:17,678 INFO L87 Difference]: Start difference. First operand 47 states and 54 transitions. cyclomatic complexity: 10 Second operand 5 states. [2018-11-10 08:36:17,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 08:36:17,713 INFO L93 Difference]: Finished difference Result 96 states and 106 transitions. [2018-11-10 08:36:17,714 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-10 08:36:17,714 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 96 states and 106 transitions. [2018-11-10 08:36:17,714 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 34 [2018-11-10 08:36:17,715 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 96 states to 74 states and 83 transitions. [2018-11-10 08:36:17,715 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 62 [2018-11-10 08:36:17,715 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 62 [2018-11-10 08:36:17,715 INFO L73 IsDeterministic]: Start isDeterministic. Operand 74 states and 83 transitions. [2018-11-10 08:36:17,715 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:17,715 INFO L705 BuchiCegarLoop]: Abstraction has 74 states and 83 transitions. [2018-11-10 08:36:17,716 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states and 83 transitions. [2018-11-10 08:36:17,719 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 47. [2018-11-10 08:36:17,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-10 08:36:17,719 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 53 transitions. [2018-11-10 08:36:17,720 INFO L728 BuchiCegarLoop]: Abstraction has 47 states and 53 transitions. [2018-11-10 08:36:17,720 INFO L608 BuchiCegarLoop]: Abstraction has 47 states and 53 transitions. [2018-11-10 08:36:17,720 INFO L442 BuchiCegarLoop]: ======== Iteration 6============ [2018-11-10 08:36:17,720 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states and 53 transitions. [2018-11-10 08:36:17,720 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 17 [2018-11-10 08:36:17,720 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:17,720 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:17,721 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, 1] [2018-11-10 08:36:17,721 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:17,721 INFO L793 eck$LassoCheckResult]: Stem: 992#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 962#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; 963#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 971#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 964#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 965#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 987#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 988#L547-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; 976#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 977#L509-5 assume true; 989#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 995#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 985#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 986#L509-5 assume true; 990#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 994#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 991#L509-6 strlen_#res := strlen_~i~0; 966#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; 967#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 978#L509-12 assume true; 980#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 956#L509-9 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 957#L509-13 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 !(strstr_~nl~0 % 4294967296 == 0); 973#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 974#L531-4 [2018-11-10 08:36:17,721 INFO L795 eck$LassoCheckResult]: Loop: 974#L531-4 assume true; 993#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 960#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 961#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 968#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 975#L532-3 assume !strstr_#t~short17; 981#L532-5 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 982#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 974#L531-4 [2018-11-10 08:36:17,721 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:17,721 INFO L82 PathProgramCache]: Analyzing trace with hash 708959006, now seen corresponding path program 1 times [2018-11-10 08:36:17,721 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:17,721 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:17,722 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,722 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:17,722 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:17,819 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 08:36:17,819 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-10 08:36:17,819 INFO L225 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/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-10 08:36:17,829 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:17,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:17,860 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:17,890 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-11-10 08:36:17,907 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-10 08:36:17,907 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 11 [2018-11-10 08:36:17,908 INFO L798 eck$LassoCheckResult]: stem already infeasible [2018-11-10 08:36:17,908 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:17,908 INFO L82 PathProgramCache]: Analyzing trace with hash -1197642521, now seen corresponding path program 3 times [2018-11-10 08:36:17,908 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:17,908 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:17,908 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,909 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:17,909 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:17,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:17,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:17,976 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2018-11-10 08:36:17,977 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2018-11-10 08:36:17,977 INFO L87 Difference]: Start difference. First operand 47 states and 53 transitions. cyclomatic complexity: 9 Second operand 12 states. [2018-11-10 08:36:18,090 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 08:36:18,090 INFO L93 Difference]: Finished difference Result 156 states and 174 transitions. [2018-11-10 08:36:18,091 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-10 08:36:18,091 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 156 states and 174 transitions. [2018-11-10 08:36:18,092 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 68 [2018-11-10 08:36:18,093 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 156 states to 144 states and 162 transitions. [2018-11-10 08:36:18,093 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 114 [2018-11-10 08:36:18,093 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 114 [2018-11-10 08:36:18,093 INFO L73 IsDeterministic]: Start isDeterministic. Operand 144 states and 162 transitions. [2018-11-10 08:36:18,093 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:18,094 INFO L705 BuchiCegarLoop]: Abstraction has 144 states and 162 transitions. [2018-11-10 08:36:18,094 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states and 162 transitions. [2018-11-10 08:36:18,098 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 47. [2018-11-10 08:36:18,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-10 08:36:18,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 52 transitions. [2018-11-10 08:36:18,100 INFO L728 BuchiCegarLoop]: Abstraction has 47 states and 52 transitions. [2018-11-10 08:36:18,100 INFO L608 BuchiCegarLoop]: Abstraction has 47 states and 52 transitions. [2018-11-10 08:36:18,100 INFO L442 BuchiCegarLoop]: ======== Iteration 7============ [2018-11-10 08:36:18,100 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states and 52 transitions. [2018-11-10 08:36:18,100 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 17 [2018-11-10 08:36:18,101 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:18,101 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:18,101 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:18,101 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:18,101 INFO L793 eck$LassoCheckResult]: Stem: 1302#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1266#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; 1267#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 1279#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 1274#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 1275#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 1297#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 1298#L547-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; 1286#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1287#L509-5 assume true; 1299#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 1305#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 1295#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1296#L509-5 assume true; 1300#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 1304#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 1301#L509-6 strlen_#res := strlen_~i~0; 1276#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; 1277#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1288#L509-12 assume true; 1289#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 1270#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 1271#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1282#L509-12 assume true; 1290#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 1268#L509-9 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 1269#L509-13 strlen_#res := strlen_~i~0; 1280#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; 1281#L529 assume !(strstr_~nl~0 % 4294967296 == 0); 1283#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 1284#L531-4 [2018-11-10 08:36:18,102 INFO L795 eck$LassoCheckResult]: Loop: 1284#L531-4 assume true; 1303#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 1272#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 1273#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 1278#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1285#L532-3 assume !strstr_#t~short17; 1291#L532-5 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 1292#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 1284#L531-4 [2018-11-10 08:36:18,102 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:18,102 INFO L82 PathProgramCache]: Analyzing trace with hash -1237635269, now seen corresponding path program 1 times [2018-11-10 08:36:18,102 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:18,102 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:18,102 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:18,103 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:18,103 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:18,112 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:18,121 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:18,126 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:18,127 INFO L82 PathProgramCache]: Analyzing trace with hash -1197642521, now seen corresponding path program 4 times [2018-11-10 08:36:18,127 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:18,127 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:18,127 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:18,128 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:18,128 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:18,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:18,135 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:18,136 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:18,136 INFO L82 PathProgramCache]: Analyzing trace with hash 733659681, now seen corresponding path program 1 times [2018-11-10 08:36:18,136 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:18,137 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:18,138 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:18,139 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:18,139 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:18,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:18,160 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:18,806 WARN L179 SmtUtils]: Spent 531.00 ms on a formula simplification. DAG size of input: 225 DAG size of output: 174 [2018-11-10 08:36:18,917 WARN L179 SmtUtils]: Spent 108.00 ms on a formula simplification that was a NOOP. DAG size: 119 [2018-11-10 08:36:18,919 INFO L214 LassoAnalysis]: Preferences: [2018-11-10 08:36:18,919 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-10 08:36:18,919 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-10 08:36:18,919 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-10 08:36:18,919 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-10 08:36:18,919 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-10 08:36:18,919 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-10 08:36:18,919 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-10 08:36:18,919 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration7_Lasso [2018-11-10 08:36:18,919 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-10 08:36:18,919 INFO L280 LassoAnalysis]: Starting lasso preprocessing... [2018-11-10 08:36:18,922 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,924 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,926 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,928 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,931 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,933 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,934 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,936 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,946 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,947 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,948 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,949 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,950 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,955 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,956 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,958 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,959 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,960 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,961 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,962 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,964 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:18,965 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:19,293 WARN L179 SmtUtils]: Spent 197.00 ms on a formula simplification. DAG size of input: 124 DAG size of output: 108 [2018-11-10 08:36:19,388 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:19,389 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:19,796 INFO L298 LassoAnalysis]: Preprocessing complete. [2018-11-10 08:36:19,796 INFO L496 LassoAnalysis]: Using template 'affine'. [2018-11-10 08:36:19,796 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 08:36:19,796 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,797 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,797 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,797 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,797 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,797 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,797 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,800 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,800 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-10 08:36:19,800 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,801 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,801 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,801 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,801 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,801 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,801 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,802 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,802 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-10 08:36:19,802 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,802 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,802 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,803 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,803 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,803 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,803 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,803 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,804 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 08:36:19,804 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,804 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,804 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,804 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,805 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,805 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,806 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,807 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-10 08:36:19,807 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,807 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,807 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,807 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,808 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,808 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,808 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,808 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,808 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-10 08:36:19,809 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,809 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,809 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,809 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,809 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,809 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,809 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,810 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,810 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-10 08:36:19,810 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,810 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,810 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,810 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,811 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,811 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,811 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,811 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,811 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-10 08:36:19,812 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,812 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,812 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,812 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,813 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,813 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,822 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,823 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-10 08:36:19,823 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,823 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,823 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,823 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,824 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,824 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,824 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,824 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,824 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-10 08:36:19,825 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,825 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,825 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,825 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,825 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,825 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,825 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,826 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,826 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-10 08:36:19,826 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,826 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,827 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,827 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,827 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,827 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,827 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,827 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,828 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-10 08:36:19,828 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,828 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,828 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,828 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,828 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,828 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,828 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,829 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,829 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-10 08:36:19,829 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,829 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,830 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,830 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,830 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,830 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,830 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,830 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,831 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-10 08:36:19,831 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,831 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,831 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,831 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,831 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,831 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,831 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,832 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,832 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-10 08:36:19,832 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,833 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,833 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,833 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,833 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,833 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,834 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,835 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-10 08:36:19,835 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,835 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,835 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,835 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,835 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,835 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,836 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,836 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,836 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-10 08:36:19,836 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,837 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,837 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,837 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,837 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,837 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,837 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,838 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,838 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-10 08:36:19,838 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,838 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,838 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,838 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,838 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,839 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,839 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,839 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,839 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-10 08:36:19,840 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,840 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,840 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,840 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,840 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,840 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,840 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,841 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,841 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-10 08:36:19,841 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,841 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,841 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,841 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,842 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,842 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,842 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,842 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,842 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-10 08:36:19,843 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,843 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:19,843 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,843 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,843 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,843 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:19,843 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:19,844 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,844 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-10 08:36:19,844 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,844 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,844 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,844 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,845 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,845 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,847 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,847 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-10 08:36:19,847 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,847 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,848 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,848 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,848 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,848 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,850 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,850 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-10 08:36:19,851 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,851 INFO L205 nArgumentSynthesizer]: 4 stem disjuncts [2018-11-10 08:36:19,851 INFO L206 nArgumentSynthesizer]: 2 loop disjuncts [2018-11-10 08:36:19,851 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,853 INFO L402 nArgumentSynthesizer]: We have 28 Motzkin's Theorem applications. [2018-11-10 08:36:19,853 INFO L403 nArgumentSynthesizer]: A total of 4 supporting invariants were added. [2018-11-10 08:36:19,865 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,865 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-10 08:36:19,865 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,866 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,866 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,866 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,867 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,867 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,873 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,873 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-10 08:36:19,873 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,873 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,874 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,874 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,874 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,874 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,877 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,878 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-10 08:36:19,878 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,878 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,878 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,878 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,879 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,879 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,880 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,881 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-10 08:36:19,881 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,881 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,881 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,881 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,882 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,882 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,883 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,883 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-10 08:36:19,883 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,884 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 08:36:19,884 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,884 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,885 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 08:36:19,885 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,892 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,893 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-10 08:36:19,893 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,893 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,893 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,893 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,894 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,894 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,896 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:19,896 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-10 08:36:19,896 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:19,897 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:19,897 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:19,897 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:19,899 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:19,899 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:19,920 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-10 08:36:19,940 INFO L443 ModelExtractionUtils]: Simplification made 5 calls to the SMT solver. [2018-11-10 08:36:19,941 INFO L444 ModelExtractionUtils]: 48 out of 55 variables were initially zero. Simplification set additionally 4 variables to zero. [2018-11-10 08:36:19,941 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-10 08:36:19,942 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-10 08:36:19,942 INFO L517 LassoAnalysis]: Proved termination. [2018-11-10 08:36:19,942 INFO L519 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select #length ULTIMATE.start_main_#t~malloc20.base)_3, ULTIMATE.start_strstr_~haystack.offset) = 1*v_rep(select #length ULTIMATE.start_main_#t~malloc20.base)_3 - 1*ULTIMATE.start_strstr_~haystack.offset Supporting invariants [] [2018-11-10 08:36:20,089 INFO L297 tatePredicateManager]: 33 out of 34 supporting invariants were superfluous and have been removed [2018-11-10 08:36:20,090 WARN L1239 BoogieBacktranslator]: unknown boogie variable #length [2018-11-10 08:36:20,119 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:20,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:20,133 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:20,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:20,146 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:20,172 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-10 08:36:20,172 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-10 08:36:20,172 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 47 states and 52 transitions. cyclomatic complexity: 8 Second operand 7 states. [2018-11-10 08:36:20,256 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 47 states and 52 transitions. cyclomatic complexity: 8. Second operand 7 states. Result 65 states and 74 transitions. Complement of second has 8 states. [2018-11-10 08:36:20,257 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-10 08:36:20,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2018-11-10 08:36:20,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 47 transitions. [2018-11-10 08:36:20,257 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 47 transitions. Stem has 30 letters. Loop has 8 letters. [2018-11-10 08:36:20,258 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:20,258 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 47 transitions. Stem has 38 letters. Loop has 8 letters. [2018-11-10 08:36:20,258 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:20,258 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 47 transitions. Stem has 30 letters. Loop has 16 letters. [2018-11-10 08:36:20,259 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:20,259 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 65 states and 74 transitions. [2018-11-10 08:36:20,259 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2018-11-10 08:36:20,260 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 65 states to 62 states and 69 transitions. [2018-11-10 08:36:20,260 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 35 [2018-11-10 08:36:20,260 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 37 [2018-11-10 08:36:20,260 INFO L73 IsDeterministic]: Start isDeterministic. Operand 62 states and 69 transitions. [2018-11-10 08:36:20,261 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:20,261 INFO L705 BuchiCegarLoop]: Abstraction has 62 states and 69 transitions. [2018-11-10 08:36:20,261 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 62 states and 69 transitions. [2018-11-10 08:36:20,266 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 62 to 61. [2018-11-10 08:36:20,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 61 states. [2018-11-10 08:36:20,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 68 transitions. [2018-11-10 08:36:20,266 INFO L728 BuchiCegarLoop]: Abstraction has 61 states and 68 transitions. [2018-11-10 08:36:20,266 INFO L608 BuchiCegarLoop]: Abstraction has 61 states and 68 transitions. [2018-11-10 08:36:20,266 INFO L442 BuchiCegarLoop]: ======== Iteration 8============ [2018-11-10 08:36:20,266 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 61 states and 68 transitions. [2018-11-10 08:36:20,267 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2018-11-10 08:36:20,267 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:20,267 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:20,268 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:20,268 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:20,268 INFO L793 eck$LassoCheckResult]: Stem: 1709#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1667#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; 1668#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 1683#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 1677#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 1678#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 1704#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 1705#L547-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; 1691#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1692#L509-5 assume true; 1706#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 1713#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 1702#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1703#L509-5 assume true; 1707#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 1712#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 1708#L509-6 strlen_#res := strlen_~i~0; 1679#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; 1680#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1693#L509-12 assume true; 1694#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 1671#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 1672#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1686#L509-12 assume true; 1695#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 1669#L509-9 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 1670#L509-13 strlen_#res := strlen_~i~0; 1684#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; 1685#L529 assume !(strstr_~nl~0 % 4294967296 == 0); 1687#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 1688#L531-4 assume true; 1710#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 1673#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 1674#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 1681#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1689#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 1664#L517-4 [2018-11-10 08:36:20,268 INFO L795 eck$LassoCheckResult]: Loop: 1664#L517-4 assume true; 1657#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1658#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 1661#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 1714#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 1698#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 1699#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 1664#L517-4 [2018-11-10 08:36:20,268 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:20,268 INFO L82 PathProgramCache]: Analyzing trace with hash -633872764, now seen corresponding path program 1 times [2018-11-10 08:36:20,268 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:20,268 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:20,269 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:20,269 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:20,269 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:20,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:20,292 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:20,296 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:20,297 INFO L82 PathProgramCache]: Analyzing trace with hash -637635867, now seen corresponding path program 1 times [2018-11-10 08:36:20,297 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:20,297 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:20,297 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:20,297 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:20,297 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:20,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:20,302 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:20,304 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:20,304 INFO L82 PathProgramCache]: Analyzing trace with hash -787821822, now seen corresponding path program 1 times [2018-11-10 08:36:20,304 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:20,304 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:20,305 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:20,305 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:20,305 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:20,315 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:20,326 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:21,219 WARN L179 SmtUtils]: Spent 806.00 ms on a formula simplification. DAG size of input: 284 DAG size of output: 212 [2018-11-10 08:36:21,393 WARN L179 SmtUtils]: Spent 171.00 ms on a formula simplification that was a NOOP. DAG size: 153 [2018-11-10 08:36:21,395 INFO L214 LassoAnalysis]: Preferences: [2018-11-10 08:36:21,395 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-10 08:36:21,395 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-10 08:36:21,395 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-10 08:36:21,395 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-10 08:36:21,396 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-10 08:36:21,396 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-10 08:36:21,396 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-10 08:36:21,396 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration8_Lasso [2018-11-10 08:36:21,396 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-10 08:36:21,396 INFO L280 LassoAnalysis]: Starting lasso preprocessing... [2018-11-10 08:36:21,400 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:21,411 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:21,419 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:21,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-10 08:36:21,422 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:21,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-10 08:36:22,001 WARN L179 SmtUtils]: Spent 327.00 ms on a formula simplification. DAG size of input: 169 DAG size of output: 142 [2018-11-10 08:36:22,168 WARN L179 SmtUtils]: Spent 140.00 ms on a formula simplification. DAG size of input: 110 DAG size of output: 96 [2018-11-10 08:36:22,168 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:22,169 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:22,170 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:22,171 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:22,172 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:22,173 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:22,174 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:22,174 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:22,175 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:22,821 INFO L298 LassoAnalysis]: Preprocessing complete. [2018-11-10 08:36:22,822 INFO L496 LassoAnalysis]: Using template 'affine'. [2018-11-10 08:36:22,822 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-10 08:36:22,822 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,822 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,822 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,822 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,823 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,823 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,823 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,823 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,824 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-10 08:36:22,824 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,824 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,824 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,824 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,824 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,824 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,824 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,825 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,825 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-10 08:36:22,825 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,825 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,826 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,826 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,826 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,826 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,826 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,826 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,827 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-10 08:36:22,827 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,827 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,827 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,827 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,827 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,828 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,828 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,828 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,828 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-10 08:36:22,829 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,829 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,829 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,829 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,829 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,829 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,829 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,830 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,830 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-10 08:36:22,830 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,830 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,830 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,830 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,830 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,831 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,831 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,831 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,831 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-10 08:36:22,831 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,832 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,832 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,832 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,832 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,832 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,833 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,833 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-10 08:36:22,834 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,834 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,834 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,834 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,834 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,834 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,834 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,835 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,835 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-10 08:36:22,835 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,836 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,836 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,836 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,836 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,836 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,836 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,836 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,837 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-10 08:36:22,837 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,837 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,837 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,837 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,837 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,837 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,837 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,838 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,838 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-10 08:36:22,838 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,838 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,838 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,839 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,839 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,839 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,843 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,843 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,843 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-10 08:36:22,844 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,844 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,844 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,844 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,844 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,844 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,844 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,845 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,845 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-10 08:36:22,845 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,845 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,845 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,845 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,846 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,846 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,847 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,848 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-10 08:36:22,849 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,849 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,849 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,849 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,849 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,849 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,849 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,850 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,850 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-10 08:36:22,850 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,850 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,850 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,850 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,850 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,851 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,851 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,851 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,851 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-10 08:36:22,852 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,852 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,852 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,852 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,853 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,854 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,869 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,869 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-10 08:36:22,870 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,870 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,870 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,870 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,870 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,870 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,870 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,872 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,872 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-10 08:36:22,872 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,873 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,873 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,873 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,873 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,873 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,873 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,874 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,874 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-10 08:36:22,874 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,874 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,874 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,874 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,875 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,875 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,876 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,876 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,877 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-10 08:36:22,877 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,877 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,877 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,877 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,877 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,877 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,878 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,878 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,878 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-10 08:36:22,878 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,879 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:22,879 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,879 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,880 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,881 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:22,881 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:22,881 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,882 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-10 08:36:22,882 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,882 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,882 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,882 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,883 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,883 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,885 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,887 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-10 08:36:22,888 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,888 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,888 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,888 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,889 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,889 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,890 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,890 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-10 08:36:22,890 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,891 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,891 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,891 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,892 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,892 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,893 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,893 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-10 08:36:22,893 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,894 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,894 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,894 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,894 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,894 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,896 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,896 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-10 08:36:22,897 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,897 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,897 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,897 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,898 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,898 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,899 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,899 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-10 08:36:22,900 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,900 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,900 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,900 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,901 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,901 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,903 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,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-10 08:36:22,904 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,904 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,904 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,904 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,905 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,905 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,909 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,909 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-10 08:36:22,909 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,910 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 08:36:22,910 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,910 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,913 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 08:36:22,913 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,920 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:22,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-10 08:36:22,921 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:22,922 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:22,922 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:22,922 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:22,929 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:22,930 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:22,976 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-10 08:36:23,000 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2018-11-10 08:36:23,000 INFO L444 ModelExtractionUtils]: 75 out of 79 variables were initially zero. Simplification set additionally 1 variables to zero. [2018-11-10 08:36:23,001 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-10 08:36:23,001 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-10 08:36:23,002 INFO L517 LassoAnalysis]: Proved termination. [2018-11-10 08:36:23,002 INFO L519 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_memcmp_~s~0.offset, v_rep(select #length ULTIMATE.start_#Ultimate.alloc_#res.base)_4) = -1*ULTIMATE.start_memcmp_~s~0.offset + 1*v_rep(select #length ULTIMATE.start_#Ultimate.alloc_#res.base)_4 Supporting invariants [] [2018-11-10 08:36:23,146 INFO L297 tatePredicateManager]: 42 out of 43 supporting invariants were superfluous and have been removed [2018-11-10 08:36:23,148 WARN L387 cessorBacktranslator]: Unfinished Backtranslation: Nested struct field access of VarList #Ultimate.alloc_#res : $Pointer$ not handled [2018-11-10 08:36:23,148 WARN L1239 BoogieBacktranslator]: unknown boogie variable #length [2018-11-10 08:36:23,148 WARN L1239 BoogieBacktranslator]: unknown boogie variable #Ultimate.alloc_#res [2018-11-10 08:36:23,162 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:23,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:23,184 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:23,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:23,206 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:23,217 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-10 08:36:23,217 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.3 stem predicates 2 loop predicates [2018-11-10 08:36:23,217 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 61 states and 68 transitions. cyclomatic complexity: 11 Second operand 6 states. [2018-11-10 08:36:23,277 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 61 states and 68 transitions. cyclomatic complexity: 11. Second operand 6 states. Result 164 states and 182 transitions. Complement of second has 9 states. [2018-11-10 08:36:23,278 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-10 08:36:23,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-10 08:36:23,279 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 63 transitions. [2018-11-10 08:36:23,279 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 63 transitions. Stem has 36 letters. Loop has 7 letters. [2018-11-10 08:36:23,279 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:23,279 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 63 transitions. Stem has 43 letters. Loop has 7 letters. [2018-11-10 08:36:23,279 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:23,280 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 63 transitions. Stem has 36 letters. Loop has 14 letters. [2018-11-10 08:36:23,282 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:23,282 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 164 states and 182 transitions. [2018-11-10 08:36:23,283 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2018-11-10 08:36:23,286 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 164 states to 113 states and 126 transitions. [2018-11-10 08:36:23,286 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 48 [2018-11-10 08:36:23,286 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 48 [2018-11-10 08:36:23,286 INFO L73 IsDeterministic]: Start isDeterministic. Operand 113 states and 126 transitions. [2018-11-10 08:36:23,287 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:23,287 INFO L705 BuchiCegarLoop]: Abstraction has 113 states and 126 transitions. [2018-11-10 08:36:23,290 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states and 126 transitions. [2018-11-10 08:36:23,293 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 82. [2018-11-10 08:36:23,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 82 states. [2018-11-10 08:36:23,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 91 transitions. [2018-11-10 08:36:23,293 INFO L728 BuchiCegarLoop]: Abstraction has 82 states and 91 transitions. [2018-11-10 08:36:23,293 INFO L608 BuchiCegarLoop]: Abstraction has 82 states and 91 transitions. [2018-11-10 08:36:23,294 INFO L442 BuchiCegarLoop]: ======== Iteration 9============ [2018-11-10 08:36:23,294 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 82 states and 91 transitions. [2018-11-10 08:36:23,294 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2018-11-10 08:36:23,294 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:23,294 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:23,295 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:23,295 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:23,296 INFO L793 eck$LassoCheckResult]: Stem: 2275#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 2238#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; 2239#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 2248#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 2242#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 2243#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 2269#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 2270#L547-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; 2255#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2256#L509-5 assume true; 2271#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 2279#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 2267#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2268#L509-5 assume true; 2272#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 2278#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 2273#L509-6 strlen_#res := strlen_~i~0; 2240#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; 2241#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2257#L509-12 assume true; 2258#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 2232#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 2233#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2249#L509-12 assume true; 2259#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 2230#L509-9 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 2231#L509-13 strlen_#res := strlen_~i~0; 2246#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; 2247#L529 assume !(strstr_~nl~0 % 4294967296 == 0); 2250#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 2251#L531-4 assume true; 2285#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 2300#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 2299#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 2253#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2254#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 2261#L517-4 assume true; 2289#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2290#L517-2 assume !(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 2228#L517-5 memcmp_#res := 0; 2229#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := strstr_#t~ret16 == 0; 2274#L532-5 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 2298#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 2297#L531-4 assume true; 2276#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 2234#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 2235#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 2244#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2252#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 2225#L517-4 [2018-11-10 08:36:23,296 INFO L795 eck$LassoCheckResult]: Loop: 2225#L517-4 assume true; 2219#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2220#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 2223#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 2280#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 2263#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2264#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 2225#L517-4 [2018-11-10 08:36:23,296 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:23,296 INFO L82 PathProgramCache]: Analyzing trace with hash 1759235271, now seen corresponding path program 1 times [2018-11-10 08:36:23,296 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:23,296 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:23,297 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:23,297 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:23,297 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:23,304 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:23,329 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-10 08:36:23,330 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 08:36:23,330 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-10 08:36:23,330 INFO L798 eck$LassoCheckResult]: stem already infeasible [2018-11-10 08:36:23,330 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:23,330 INFO L82 PathProgramCache]: Analyzing trace with hash -637635867, now seen corresponding path program 2 times [2018-11-10 08:36:23,330 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:23,330 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:23,331 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:23,331 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:23,331 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:23,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:23,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:23,385 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-10 08:36:23,385 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-10 08:36:23,386 INFO L87 Difference]: Start difference. First operand 82 states and 91 transitions. cyclomatic complexity: 15 Second operand 4 states. [2018-11-10 08:36:23,415 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 08:36:23,415 INFO L93 Difference]: Finished difference Result 84 states and 92 transitions. [2018-11-10 08:36:23,415 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-10 08:36:23,415 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 84 states and 92 transitions. [2018-11-10 08:36:23,416 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2018-11-10 08:36:23,416 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 84 states to 81 states and 88 transitions. [2018-11-10 08:36:23,417 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 36 [2018-11-10 08:36:23,417 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2018-11-10 08:36:23,417 INFO L73 IsDeterministic]: Start isDeterministic. Operand 81 states and 88 transitions. [2018-11-10 08:36:23,417 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:23,417 INFO L705 BuchiCegarLoop]: Abstraction has 81 states and 88 transitions. [2018-11-10 08:36:23,417 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states and 88 transitions. [2018-11-10 08:36:23,419 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 81. [2018-11-10 08:36:23,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 81 states. [2018-11-10 08:36:23,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 81 states to 81 states and 88 transitions. [2018-11-10 08:36:23,422 INFO L728 BuchiCegarLoop]: Abstraction has 81 states and 88 transitions. [2018-11-10 08:36:23,422 INFO L608 BuchiCegarLoop]: Abstraction has 81 states and 88 transitions. [2018-11-10 08:36:23,422 INFO L442 BuchiCegarLoop]: ======== Iteration 10============ [2018-11-10 08:36:23,422 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 81 states and 88 transitions. [2018-11-10 08:36:23,422 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2018-11-10 08:36:23,422 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:23,422 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:23,423 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:23,423 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:23,424 INFO L793 eck$LassoCheckResult]: Stem: 2449#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 2403#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; 2404#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 2419#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 2413#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 2414#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 2441#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 2442#L547-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; 2427#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2428#L509-5 assume true; 2444#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 2453#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 2439#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2440#L509-5 assume true; 2445#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 2452#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 2446#L509-6 strlen_#res := strlen_~i~0; 2415#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; 2416#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2429#L509-12 assume true; 2430#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 2407#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 2408#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2422#L509-12 assume true; 2431#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 2405#L509-9 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 2406#L509-13 strlen_#res := strlen_~i~0; 2420#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; 2421#L529 assume !(strstr_~nl~0 % 4294967296 == 0); 2423#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 2424#L531-4 assume true; 2451#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 2411#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 2412#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 2418#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2426#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 2433#L517-4 assume true; 2396#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2397#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 2399#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 2455#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 2437#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2438#L518-3 assume memcmp_~r~0 != 0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 2447#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := strstr_#t~ret16 == 0; 2448#L532-5 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 2458#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 2457#L531-4 assume true; 2450#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 2409#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 2410#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 2417#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2425#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 2400#L517-4 [2018-11-10 08:36:23,424 INFO L795 eck$LassoCheckResult]: Loop: 2400#L517-4 assume true; 2394#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2395#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 2398#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 2454#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 2435#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2436#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 2400#L517-4 [2018-11-10 08:36:23,424 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:23,424 INFO L82 PathProgramCache]: Analyzing trace with hash 2080015035, now seen corresponding path program 1 times [2018-11-10 08:36:23,424 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:23,424 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:23,425 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:23,425 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:23,425 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:23,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:23,526 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 08:36:23,526 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-10 08:36:23,527 INFO L225 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/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-10 08:36:23,534 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:23,560 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:23,563 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:23,644 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 26 treesize of output 26 [2018-11-10 08:36:23,646 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 22 treesize of output 15 [2018-11-10 08:36:23,647 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-10 08:36:23,654 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 8 [2018-11-10 08:36:23,655 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-10 08:36:23,662 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 0 case distinctions, treesize of input 18 treesize of output 3 [2018-11-10 08:36:23,662 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-10 08:36:23,665 INFO L267 ElimStorePlain]: Start of recursive call 2: 3 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-10 08:36:23,666 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-10 08:36:23,666 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 5 variables, input treesize:26, output treesize:3 [2018-11-10 08:36:23,700 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-10 08:36:23,717 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-10 08:36:23,717 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [12] total 19 [2018-11-10 08:36:23,717 INFO L798 eck$LassoCheckResult]: stem already infeasible [2018-11-10 08:36:23,717 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:23,717 INFO L82 PathProgramCache]: Analyzing trace with hash -637635867, now seen corresponding path program 3 times [2018-11-10 08:36:23,717 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:23,718 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:23,718 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:23,718 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:23,718 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:23,720 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:23,723 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:23,774 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-11-10 08:36:23,774 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=304, Unknown=0, NotChecked=0, Total=342 [2018-11-10 08:36:23,775 INFO L87 Difference]: Start difference. First operand 81 states and 88 transitions. cyclomatic complexity: 13 Second operand 19 states. [2018-11-10 08:36:25,027 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 08:36:25,027 INFO L93 Difference]: Finished difference Result 356 states and 377 transitions. [2018-11-10 08:36:25,031 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 44 states. [2018-11-10 08:36:25,031 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 356 states and 377 transitions. [2018-11-10 08:36:25,033 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 21 [2018-11-10 08:36:25,034 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 356 states to 289 states and 309 transitions. [2018-11-10 08:36:25,034 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 103 [2018-11-10 08:36:25,035 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 103 [2018-11-10 08:36:25,035 INFO L73 IsDeterministic]: Start isDeterministic. Operand 289 states and 309 transitions. [2018-11-10 08:36:25,035 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:25,035 INFO L705 BuchiCegarLoop]: Abstraction has 289 states and 309 transitions. [2018-11-10 08:36:25,035 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 289 states and 309 transitions. [2018-11-10 08:36:25,037 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 289 to 103. [2018-11-10 08:36:25,038 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 103 states. [2018-11-10 08:36:25,038 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 111 transitions. [2018-11-10 08:36:25,038 INFO L728 BuchiCegarLoop]: Abstraction has 103 states and 111 transitions. [2018-11-10 08:36:25,038 INFO L608 BuchiCegarLoop]: Abstraction has 103 states and 111 transitions. [2018-11-10 08:36:25,038 INFO L442 BuchiCegarLoop]: ======== Iteration 11============ [2018-11-10 08:36:25,038 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 103 states and 111 transitions. [2018-11-10 08:36:25,039 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2018-11-10 08:36:25,039 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:25,039 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:25,040 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 3, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:25,040 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:25,040 INFO L793 eck$LassoCheckResult]: Stem: 3141#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 3089#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; 3090#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 3105#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 3099#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 3100#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 3131#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 3132#L547-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; 3113#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3114#L509-5 assume true; 3133#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 3159#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 3128#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3129#L509-5 assume true; 3144#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 3145#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 3137#L509-6 strlen_#res := strlen_~i~0; 3138#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; 3120#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3121#L509-12 assume true; 3158#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 3157#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 3156#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3117#L509-12 assume true; 3116#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 3093#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 3094#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3108#L509-12 assume true; 3140#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 3091#L509-9 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 3092#L509-13 strlen_#res := strlen_~i~0; 3106#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; 3107#L529 assume !(strstr_~nl~0 % 4294967296 == 0); 3109#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 3110#L531-4 assume true; 3153#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 3165#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 3164#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 3163#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3162#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 3088#L517-4 assume true; 3083#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3084#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 3086#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 3148#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 3126#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3127#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3130#L517-4 assume true; 3173#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3174#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 3169#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 3170#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 3166#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3154#L518-3 assume memcmp_~r~0 != 0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 3139#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := strstr_#t~ret16 == 0; 3118#L532-5 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 3160#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 3155#L531-4 assume true; 3142#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 3095#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 3096#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 3103#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3111#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 3087#L517-4 [2018-11-10 08:36:25,040 INFO L795 eck$LassoCheckResult]: Loop: 3087#L517-4 assume true; 3081#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3082#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 3085#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 3147#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 3124#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3125#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3087#L517-4 [2018-11-10 08:36:25,040 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:25,040 INFO L82 PathProgramCache]: Analyzing trace with hash -886368580, now seen corresponding path program 1 times [2018-11-10 08:36:25,041 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:25,041 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:25,041 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:25,041 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:25,041 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:25,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:25,131 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2018-11-10 08:36:25,131 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-10 08:36:25,132 INFO L225 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/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-10 08:36:25,151 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:25,185 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:25,187 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:25,207 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 10 proven. 6 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2018-11-10 08:36:25,224 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-10 08:36:25,224 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 9 [2018-11-10 08:36:25,224 INFO L798 eck$LassoCheckResult]: stem already infeasible [2018-11-10 08:36:25,224 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:25,224 INFO L82 PathProgramCache]: Analyzing trace with hash -637635867, now seen corresponding path program 4 times [2018-11-10 08:36:25,225 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:25,225 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:25,225 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:25,225 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:25,225 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:25,227 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:25,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:25,282 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-10 08:36:25,283 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=57, Unknown=0, NotChecked=0, Total=72 [2018-11-10 08:36:25,283 INFO L87 Difference]: Start difference. First operand 103 states and 111 transitions. cyclomatic complexity: 14 Second operand 9 states. [2018-11-10 08:36:25,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 08:36:25,371 INFO L93 Difference]: Finished difference Result 209 states and 224 transitions. [2018-11-10 08:36:25,371 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-10 08:36:25,371 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 209 states and 224 transitions. [2018-11-10 08:36:25,372 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 14 [2018-11-10 08:36:25,373 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 209 states to 166 states and 179 transitions. [2018-11-10 08:36:25,373 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 56 [2018-11-10 08:36:25,374 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 56 [2018-11-10 08:36:25,374 INFO L73 IsDeterministic]: Start isDeterministic. Operand 166 states and 179 transitions. [2018-11-10 08:36:25,374 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:25,374 INFO L705 BuchiCegarLoop]: Abstraction has 166 states and 179 transitions. [2018-11-10 08:36:25,374 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 166 states and 179 transitions. [2018-11-10 08:36:25,376 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 166 to 93. [2018-11-10 08:36:25,376 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 93 states. [2018-11-10 08:36:25,377 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 100 transitions. [2018-11-10 08:36:25,377 INFO L728 BuchiCegarLoop]: Abstraction has 93 states and 100 transitions. [2018-11-10 08:36:25,377 INFO L608 BuchiCegarLoop]: Abstraction has 93 states and 100 transitions. [2018-11-10 08:36:25,377 INFO L442 BuchiCegarLoop]: ======== Iteration 12============ [2018-11-10 08:36:25,377 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 93 states and 100 transitions. [2018-11-10 08:36:25,377 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2018-11-10 08:36:25,378 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:25,378 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:25,378 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 3, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:25,378 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:25,379 INFO L793 eck$LassoCheckResult]: Stem: 3658#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 3611#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; 3612#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 3627#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 3621#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 3622#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 3651#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 3652#L547-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; 3635#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3636#L509-5 assume true; 3653#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 3663#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 3647#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3648#L509-5 assume true; 3654#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 3670#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 3669#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3668#L509-5 assume true; 3661#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 3662#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 3655#L509-6 strlen_#res := strlen_~i~0; 3623#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; 3624#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3637#L509-12 assume true; 3638#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 3615#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 3616#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3630#L509-12 assume true; 3639#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 3613#L509-9 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 3614#L509-13 strlen_#res := strlen_~i~0; 3628#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; 3629#L529 assume !(strstr_~nl~0 % 4294967296 == 0); 3631#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 3632#L531-4 assume true; 3660#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 3619#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 3620#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 3626#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3634#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 3641#L517-4 assume true; 3691#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3695#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 3694#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 3693#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 3692#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3649#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3650#L517-4 assume true; 3690#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3689#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 3688#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 3687#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 3686#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3672#L518-3 assume memcmp_~r~0 != 0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 3656#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := strstr_#t~ret16 == 0; 3657#L532-5 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 3673#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 3671#L531-4 assume true; 3659#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 3617#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 3618#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 3625#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3633#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 3609#L517-4 [2018-11-10 08:36:25,379 INFO L795 eck$LassoCheckResult]: Loop: 3609#L517-4 assume true; 3603#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3604#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 3607#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 3664#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 3643#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3644#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3609#L517-4 [2018-11-10 08:36:25,379 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:25,379 INFO L82 PathProgramCache]: Analyzing trace with hash 670249404, now seen corresponding path program 2 times [2018-11-10 08:36:25,379 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:25,380 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:25,380 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:25,380 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:25,380 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:25,391 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:25,498 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 2 proven. 13 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2018-11-10 08:36:25,499 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-10 08:36:25,499 INFO L225 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/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-10 08:36:25,507 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-10 08:36:25,545 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-10 08:36:25,545 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-10 08:36:25,549 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:25,922 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 43 treesize of output 39 [2018-11-10 08:36:25,927 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 08:36:25,927 INFO L682 Elim1Store]: detected equality via solver [2018-11-10 08:36:25,928 INFO L682 Elim1Store]: detected equality via solver [2018-11-10 08:36:25,929 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 35 treesize of output 35 [2018-11-10 08:36:25,930 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-10 08:36:25,946 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 08:36:25,948 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 08:36:25,951 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 08:36:25,952 INFO L682 Elim1Store]: detected equality via solver [2018-11-10 08:36:25,953 INFO L682 Elim1Store]: detected equality via solver [2018-11-10 08:36:25,954 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 5 select indices, 5 select index equivalence classes, 4 disjoint index pairs (out of 10 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 32 [2018-11-10 08:36:25,955 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-10 08:36:25,969 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 14 [2018-11-10 08:36:25,970 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-10 08:36:25,980 INFO L267 ElimStorePlain]: Start of recursive call 2: 3 dim-1 vars, End of recursive call: and 2 xjuncts. [2018-11-10 08:36:25,993 INFO L267 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-11-10 08:36:25,993 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 5 variables, input treesize:49, output treesize:11 [2018-11-10 08:36:26,056 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2018-11-10 08:36:26,072 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-10 08:36:26,072 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 17] total 28 [2018-11-10 08:36:26,072 INFO L798 eck$LassoCheckResult]: stem already infeasible [2018-11-10 08:36:26,072 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:26,073 INFO L82 PathProgramCache]: Analyzing trace with hash -637635867, now seen corresponding path program 5 times [2018-11-10 08:36:26,073 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:26,073 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:26,073 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:26,073 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:26,073 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:26,075 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:26,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:26,138 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2018-11-10 08:36:26,138 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=684, Unknown=0, NotChecked=0, Total=756 [2018-11-10 08:36:26,138 INFO L87 Difference]: Start difference. First operand 93 states and 100 transitions. cyclomatic complexity: 13 Second operand 28 states. [2018-11-10 08:36:27,726 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 08:36:27,726 INFO L93 Difference]: Finished difference Result 524 states and 566 transitions. [2018-11-10 08:36:27,727 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 52 states. [2018-11-10 08:36:27,727 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 524 states and 566 transitions. [2018-11-10 08:36:27,729 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 35 [2018-11-10 08:36:27,730 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 524 states to 512 states and 554 transitions. [2018-11-10 08:36:27,731 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 122 [2018-11-10 08:36:27,731 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 122 [2018-11-10 08:36:27,731 INFO L73 IsDeterministic]: Start isDeterministic. Operand 512 states and 554 transitions. [2018-11-10 08:36:27,731 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:27,731 INFO L705 BuchiCegarLoop]: Abstraction has 512 states and 554 transitions. [2018-11-10 08:36:27,731 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 512 states and 554 transitions. [2018-11-10 08:36:27,735 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 512 to 146. [2018-11-10 08:36:27,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 146 states. [2018-11-10 08:36:27,736 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 157 transitions. [2018-11-10 08:36:27,736 INFO L728 BuchiCegarLoop]: Abstraction has 146 states and 157 transitions. [2018-11-10 08:36:27,736 INFO L608 BuchiCegarLoop]: Abstraction has 146 states and 157 transitions. [2018-11-10 08:36:27,736 INFO L442 BuchiCegarLoop]: ======== Iteration 13============ [2018-11-10 08:36:27,736 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 146 states and 157 transitions. [2018-11-10 08:36:27,736 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2018-11-10 08:36:27,737 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:27,737 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:27,737 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1] [2018-11-10 08:36:27,737 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:27,738 INFO L793 eck$LassoCheckResult]: Stem: 4596#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 4548#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; 4549#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 4561#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 4554#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 4555#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 4587#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 4588#L547-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; 4569#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 4570#L509-5 assume true; 4589#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 4615#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 4584#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 4585#L509-5 assume true; 4590#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 4619#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 4613#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 4614#L509-5 assume true; 4599#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 4600#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 4591#L509-6 strlen_#res := strlen_~i~0; 4592#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; 4576#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 4577#L509-12 assume true; 4618#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 4552#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 4553#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 4568#L509-12 assume true; 4575#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 4595#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 4617#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 4616#L509-12 assume true; 4594#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 4550#L509-9 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 4551#L509-13 strlen_#res := strlen_~i~0; 4562#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; 4563#L529 assume !(strstr_~nl~0 % 4294967296 == 0); 4564#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 4565#L531-4 assume true; 4598#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 4546#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 4547#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 4656#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 4626#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 4543#L517-4 assume true; 4538#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 4539#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 4541#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 4604#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 4582#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 4583#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 4586#L517-4 assume true; 4663#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 4662#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 4661#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 4660#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 4659#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 4623#L518-3 assume memcmp_~r~0 != 0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 4593#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := strstr_#t~ret16 == 0; 4572#L532-5 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 4621#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 4620#L531-4 assume true; 4597#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 4544#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 4545#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 4558#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 4566#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 4542#L517-4 [2018-11-10 08:36:27,738 INFO L795 eck$LassoCheckResult]: Loop: 4542#L517-4 assume true; 4536#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 4537#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 4540#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 4603#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 4580#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 4581#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 4542#L517-4 [2018-11-10 08:36:27,738 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:27,738 INFO L82 PathProgramCache]: Analyzing trace with hash -841704513, now seen corresponding path program 3 times [2018-11-10 08:36:27,738 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:27,738 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:27,739 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:27,739 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:27,739 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:27,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:27,887 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 4 proven. 22 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-10 08:36:27,887 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-10 08:36:27,887 INFO L225 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_f63a1a1f-66f2-46ba-8ba4-b3856c1bff9f/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-10 08:36:27,894 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-11-10 08:36:27,937 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2018-11-10 08:36:27,937 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-10 08:36:27,940 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:28,006 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 4 proven. 22 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-11-10 08:36:28,033 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-10 08:36:28,033 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 18 [2018-11-10 08:36:28,033 INFO L798 eck$LassoCheckResult]: stem already infeasible [2018-11-10 08:36:28,034 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:28,034 INFO L82 PathProgramCache]: Analyzing trace with hash -637635867, now seen corresponding path program 6 times [2018-11-10 08:36:28,034 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:28,034 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:28,034 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:28,034 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:28,034 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:28,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:28,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:28,117 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-10 08:36:28,117 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=260, Unknown=0, NotChecked=0, Total=306 [2018-11-10 08:36:28,117 INFO L87 Difference]: Start difference. First operand 146 states and 157 transitions. cyclomatic complexity: 18 Second operand 18 states. [2018-11-10 08:36:28,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 08:36:28,289 INFO L93 Difference]: Finished difference Result 389 states and 418 transitions. [2018-11-10 08:36:28,291 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-10 08:36:28,291 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 389 states and 418 transitions. [2018-11-10 08:36:28,293 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 28 [2018-11-10 08:36:28,294 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 389 states to 352 states and 380 transitions. [2018-11-10 08:36:28,294 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 102 [2018-11-10 08:36:28,294 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 102 [2018-11-10 08:36:28,294 INFO L73 IsDeterministic]: Start isDeterministic. Operand 352 states and 380 transitions. [2018-11-10 08:36:28,294 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 08:36:28,294 INFO L705 BuchiCegarLoop]: Abstraction has 352 states and 380 transitions. [2018-11-10 08:36:28,295 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 352 states and 380 transitions. [2018-11-10 08:36:28,298 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 352 to 150. [2018-11-10 08:36:28,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 150 states. [2018-11-10 08:36:28,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 150 states to 150 states and 161 transitions. [2018-11-10 08:36:28,298 INFO L728 BuchiCegarLoop]: Abstraction has 150 states and 161 transitions. [2018-11-10 08:36:28,298 INFO L608 BuchiCegarLoop]: Abstraction has 150 states and 161 transitions. [2018-11-10 08:36:28,299 INFO L442 BuchiCegarLoop]: ======== Iteration 14============ [2018-11-10 08:36:28,299 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 150 states and 161 transitions. [2018-11-10 08:36:28,301 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2018-11-10 08:36:28,302 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 08:36:28,302 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 08:36:28,303 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 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, 1, 1, 1, 1] [2018-11-10 08:36:28,303 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1] [2018-11-10 08:36:28,303 INFO L793 eck$LassoCheckResult]: Stem: 5360#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 5312#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; 5313#L541 assume !(main_~in_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~in_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset; 5324#L543 SUMMARY for call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1) * 1, 1); srcloc: L543 5318#L543-1 main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 5319#L545 assume !(main_~out_len~0 < 1);#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := main_~out_len~0;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset; 5351#L547 SUMMARY for call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1) * 1, 1); srcloc: L547 5352#L547-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; 5332#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 5333#L509-5 assume true; 5353#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 5382#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 5347#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 5348#L509-5 assume true; 5354#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 5390#L509-2 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 5380#L509-4 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 5381#L509-5 assume true; 5363#L509-1 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-1 5364#L509-2 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 5355#L509-6 strlen_#res := strlen_~i~0; 5356#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; 5340#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 5341#L509-12 assume true; 5387#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 5388#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 5383#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 5384#L509-12 assume true; 5389#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 5385#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 5386#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 5338#L509-12 assume true; 5339#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 5316#L509-9 assume !!(strlen_#t~mem4 != 0);havoc strlen_#t~mem4;strlen_#t~pre3 := strlen_~i~0 + 1;strlen_~i~0 := strlen_~i~0 + 1;havoc strlen_#t~pre3; 5317#L509-11 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, strlen_~s.offset + 1;strlen_~s.base, strlen_~s.offset := strlen_~s.base, strlen_~s.offset + 1;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 5329#L509-12 assume true; 5359#L509-8 SUMMARY for call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); srcloc: L509-8 5314#L509-9 assume !(strlen_#t~mem4 != 0);havoc strlen_#t~mem4; 5315#L509-13 strlen_#res := strlen_~i~0; 5325#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; 5326#L529 assume !(strstr_~nl~0 % 4294967296 == 0); 5330#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := strstr_~hl~0 - strstr_~nl~0 + 1; 5331#L531-4 assume true; 5362#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 5310#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 5311#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 5323#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 5328#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 5335#L517-4 assume true; 5438#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 5445#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 5368#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 5369#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 5441#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 5349#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 5350#L517-4 assume true; 5435#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 5434#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 5433#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 5432#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 5345#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 5346#L518-3 assume memcmp_~r~0 != 0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 5392#L523 strstr_#t~ret16 := memcmp_#res;assume { :end_inline_memcmp } true;strstr_#t~short17 := strstr_#t~ret16 == 0; 5395#L532-5 assume !strstr_#t~short17;havoc strstr_#t~mem14;havoc strstr_#t~ret16;havoc strstr_#t~mem15;havoc strstr_#t~short17;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, strstr_~haystack.offset + 1;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 5393#L531-3 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 5391#L531-4 assume true; 5361#L531-1 assume !!(strstr_~i~1 % 4294967296 != 0); 5308#L532 SUMMARY for call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1); srcloc: L532 5309#L532-1 SUMMARY for call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1); srcloc: L532-1 5322#L532-2 strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 5327#L532-3 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 := memcmp_~count + 1;memcmp_~count := memcmp_~count + 1;havoc memcmp_#t~pre5; 5306#L517-4 [2018-11-10 08:36:28,303 INFO L795 eck$LassoCheckResult]: Loop: 5306#L517-4 assume true; 5300#L517-1 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 5301#L517-2 assume !!(memcmp_#t~pre6 % 4294967296 != 0);havoc memcmp_#t~pre6; 5304#L518 SUMMARY for call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1); srcloc: L518 5367#L518-1 SUMMARY for call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1); srcloc: L518-1 5343#L518-2 memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 5344#L518-3 assume !(memcmp_~r~0 != 0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, memcmp_~d~0.offset + 1;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, memcmp_~s~0.offset + 1;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 5306#L517-4 [2018-11-10 08:36:28,303 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:28,303 INFO L82 PathProgramCache]: Analyzing trace with hash 1897614402, now seen corresponding path program 4 times [2018-11-10 08:36:28,304 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:28,304 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:28,304 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:28,304 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:28,304 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:28,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:28,352 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:28,360 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:28,360 INFO L82 PathProgramCache]: Analyzing trace with hash -637635867, now seen corresponding path program 7 times [2018-11-10 08:36:28,360 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:28,360 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:28,361 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:28,361 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 08:36:28,361 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:28,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:28,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:28,366 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:28,366 INFO L82 PathProgramCache]: Analyzing trace with hash 1040321412, now seen corresponding path program 5 times [2018-11-10 08:36:28,366 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 08:36:28,366 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 08:36:28,367 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:28,367 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 08:36:28,367 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 08:36:28,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:28,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 08:36:30,731 WARN L179 SmtUtils]: Spent 2.23 s on a formula simplification. DAG size of input: 490 DAG size of output: 358 [2018-11-10 08:36:30,979 WARN L179 SmtUtils]: Spent 230.00 ms on a formula simplification that was a NOOP. DAG size: 178 [2018-11-10 08:36:30,981 INFO L214 LassoAnalysis]: Preferences: [2018-11-10 08:36:30,981 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-10 08:36:30,981 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-10 08:36:30,981 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-10 08:36:30,981 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-10 08:36:30,981 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-10 08:36:30,981 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-10 08:36:30,981 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-10 08:36:30,981 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration14_Lasso [2018-11-10 08:36:30,981 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-10 08:36:30,981 INFO L280 LassoAnalysis]: Starting lasso preprocessing... [2018-11-10 08:36:30,985 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:30,990 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:30,993 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:30,994 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:30,995 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:30,996 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:30,998 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:30,999 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,000 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,001 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,002 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,003 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,004 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,005 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,006 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,007 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,009 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,010 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,012 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,016 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,017 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:31,030 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:32,039 WARN L179 SmtUtils]: Spent 485.00 ms on a formula simplification. DAG size of input: 214 DAG size of output: 173 [2018-11-10 08:36:32,299 WARN L179 SmtUtils]: Spent 194.00 ms on a formula simplification. DAG size of input: 141 DAG size of output: 118 [2018-11-10 08:36:32,300 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:32,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-10 08:36:32,303 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:32,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-10 08:36:32,307 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 08:36:32,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-10 08:36:32,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-10 08:36:32,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-10 08:36:32,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-10 08:36:32,789 WARN L179 SmtUtils]: Spent 214.00 ms on a formula simplification. DAG size of input: 100 DAG size of output: 95 [2018-11-10 08:36:33,233 WARN L179 SmtUtils]: Spent 347.00 ms on a formula simplification. DAG size of input: 66 DAG size of output: 62 [2018-11-10 08:36:33,484 WARN L179 SmtUtils]: Spent 100.00 ms on a formula simplification that was a NOOP. DAG size: 95 [2018-11-10 08:36:33,548 INFO L298 LassoAnalysis]: Preprocessing complete. [2018-11-10 08:36:33,549 INFO L496 LassoAnalysis]: Using template 'affine'. [2018-11-10 08:36:33,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-10 08:36:33,549 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,549 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,549 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,550 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,550 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,550 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,550 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,550 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,551 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,551 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,551 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,551 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,551 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,551 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,551 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,551 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,552 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,552 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,552 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,552 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,552 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,552 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,552 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,553 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,553 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,553 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,553 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,553 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,553 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,554 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,554 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,554 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,554 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-10 08:36:33,554 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,554 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,554 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,555 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,555 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,555 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,555 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,555 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,556 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,556 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,556 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,556 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,556 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,556 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,556 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,556 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,557 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-10 08:36:33,557 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,557 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,557 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,557 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,557 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,557 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,557 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,558 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,558 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,558 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,558 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,558 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,558 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,559 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,559 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,559 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,559 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,560 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,560 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,560 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,560 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,560 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,560 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,560 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,561 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,561 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,561 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,561 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,561 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,561 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,561 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,562 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,562 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,562 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,562 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,562 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,562 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,563 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,563 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,563 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,563 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-10 08:36:33,563 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,564 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,564 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,564 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,564 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,564 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,564 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,564 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,565 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,565 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,565 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,565 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,565 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,565 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,565 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,566 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,566 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-10 08:36:33,566 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,566 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,566 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,566 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,566 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,567 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,567 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,568 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,568 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,568 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,568 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,569 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,569 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,569 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,569 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,569 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,569 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-10 08:36:33,570 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,570 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,570 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,570 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,570 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,570 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,570 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,570 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,571 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-10 08:36:33,571 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,571 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,571 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,571 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,571 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,571 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,572 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,572 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,572 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,572 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,572 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,572 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,573 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,573 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,573 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,573 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,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-10 08:36:33,574 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,574 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 08:36:33,574 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,574 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,574 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,574 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 08:36:33,574 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 08:36:33,575 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,575 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-10 08:36:33,575 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,575 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,576 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,576 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,576 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,576 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,577 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,577 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-10 08:36:33,578 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,578 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,578 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,578 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,579 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,579 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,590 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,590 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-10 08:36:33,590 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,590 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,591 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,591 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,591 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,591 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,592 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,592 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-10 08:36:33,592 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,592 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,593 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,593 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,593 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,593 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,594 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,594 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-10 08:36:33,594 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,594 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,595 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,595 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,595 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,595 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,596 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,596 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-10 08:36:33,597 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,597 INFO L205 nArgumentSynthesizer]: 4 stem disjuncts [2018-11-10 08:36:33,597 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,597 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,601 INFO L402 nArgumentSynthesizer]: We have 12 Motzkin's Theorem applications. [2018-11-10 08:36:33,601 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,614 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,615 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-10 08:36:33,616 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,616 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,616 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,616 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,617 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,617 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,621 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,621 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-10 08:36:33,621 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,622 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,622 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,622 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,622 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,622 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,625 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,626 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-10 08:36:33,626 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,626 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,626 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,626 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,627 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,627 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,628 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,628 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-10 08:36:33,628 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,629 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,629 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,629 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,629 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,629 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,630 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,630 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-10 08:36:33,630 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,631 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,631 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,631 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,631 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,631 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,633 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,634 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-10 08:36:33,634 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,634 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 08:36:33,634 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,634 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,635 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 08:36:33,635 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,636 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,636 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-10 08:36:33,637 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,637 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 08:36:33,637 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,637 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,638 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 08:36:33,639 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,646 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,646 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-10 08:36:33,646 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,647 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 08:36:33,647 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,647 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,648 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 08:36:33,648 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,655 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 08:36:33,655 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-10 08:36:33,655 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 08:36:33,656 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 08:36:33,656 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 08:36:33,656 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 08:36:33,661 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 08:36:33,661 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 08:36:33,706 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-10 08:36:33,749 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2018-11-10 08:36:33,749 INFO L444 ModelExtractionUtils]: 91 out of 97 variables were initially zero. Simplification set additionally 3 variables to zero. [2018-11-10 08:36:33,750 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-10 08:36:33,750 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-10 08:36:33,750 INFO L517 LassoAnalysis]: Proved termination. [2018-11-10 08:36:33,750 INFO L519 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select #length ULTIMATE.start_main_~hay~0.base)_1, ULTIMATE.start_memcmp_~d~0.offset) = 1*v_rep(select #length ULTIMATE.start_main_~hay~0.base)_1 - 1*ULTIMATE.start_memcmp_~d~0.offset Supporting invariants [] [2018-11-10 08:36:34,262 INFO L297 tatePredicateManager]: 92 out of 94 supporting invariants were superfluous and have been removed [2018-11-10 08:36:34,264 WARN L1239 BoogieBacktranslator]: unknown boogie variable #length [2018-11-10 08:36:34,278 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:34,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:34,312 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:34,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:34,333 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:34,342 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-10 08:36:34,342 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.3 stem predicates 2 loop predicates [2018-11-10 08:36:34,343 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 150 states and 161 transitions. cyclomatic complexity: 18 Second operand 6 states. [2018-11-10 08:36:34,371 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 150 states and 161 transitions. cyclomatic complexity: 18. Second operand 6 states. Result 213 states and 230 transitions. Complement of second has 9 states. [2018-11-10 08:36:34,371 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-10 08:36:34,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-10 08:36:34,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 52 transitions. [2018-11-10 08:36:34,372 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 52 transitions. Stem has 71 letters. Loop has 7 letters. [2018-11-10 08:36:34,372 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:34,372 INFO L642 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2018-11-10 08:36:34,390 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:34,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:34,419 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:34,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:34,451 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:34,472 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-10 08:36:34,472 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.3 stem predicates 2 loop predicates [2018-11-10 08:36:34,472 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 150 states and 161 transitions. cyclomatic complexity: 18 Second operand 6 states. [2018-11-10 08:36:34,514 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 150 states and 161 transitions. cyclomatic complexity: 18. Second operand 6 states. Result 213 states and 230 transitions. Complement of second has 9 states. [2018-11-10 08:36:34,515 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-10 08:36:34,515 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-10 08:36:34,515 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 52 transitions. [2018-11-10 08:36:34,515 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 52 transitions. Stem has 71 letters. Loop has 7 letters. [2018-11-10 08:36:34,515 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:34,516 INFO L642 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2018-11-10 08:36:34,540 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 08:36:34,570 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:34,572 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:34,589 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 08:36:34,590 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 08:36:34,601 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-10 08:36:34,601 INFO L152 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.3 stem predicates 2 loop predicates [2018-11-10 08:36:34,602 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 150 states and 161 transitions. cyclomatic complexity: 18 Second operand 6 states. [2018-11-10 08:36:34,645 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 150 states and 161 transitions. cyclomatic complexity: 18. Second operand 6 states. Result 217 states and 234 transitions. Complement of second has 8 states. [2018-11-10 08:36:34,646 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-10 08:36:34,647 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-11-10 08:36:34,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 62 transitions. [2018-11-10 08:36:34,647 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 62 transitions. Stem has 71 letters. Loop has 7 letters. [2018-11-10 08:36:34,647 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:34,647 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 62 transitions. Stem has 78 letters. Loop has 7 letters. [2018-11-10 08:36:34,648 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:34,648 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 62 transitions. Stem has 71 letters. Loop has 14 letters. [2018-11-10 08:36:34,648 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 08:36:34,648 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 217 states and 234 transitions. [2018-11-10 08:36:34,652 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2018-11-10 08:36:34,653 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 217 states to 0 states and 0 transitions. [2018-11-10 08:36:34,653 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2018-11-10 08:36:34,653 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2018-11-10 08:36:34,653 INFO L73 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2018-11-10 08:36:34,653 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2018-11-10 08:36:34,653 INFO L705 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-10 08:36:34,653 INFO L728 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-10 08:36:34,653 INFO L608 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-10 08:36:34,653 INFO L442 BuchiCegarLoop]: ======== Iteration 15============ [2018-11-10 08:36:34,654 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2018-11-10 08:36:34,654 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2018-11-10 08:36:34,654 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2018-11-10 08:36:34,659 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 10.11 08:36:34 BoogieIcfgContainer [2018-11-10 08:36:34,659 INFO L132 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2018-11-10 08:36:34,660 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-10 08:36:34,660 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-10 08:36:34,660 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-10 08:36:34,661 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.11 08:36:13" (3/4) ... [2018-11-10 08:36:34,664 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-10 08:36:34,664 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-10 08:36:34,665 INFO L168 Benchmark]: Toolchain (without parser) took 21507.35 ms. Allocated memory was 1.0 GB in the beginning and 1.6 GB in the end (delta: 597.2 MB). Free memory was 952.2 MB in the beginning and 874.0 MB in the end (delta: 78.2 MB). Peak memory consumption was 675.3 MB. Max. memory is 11.5 GB. [2018-11-10 08:36:34,666 INFO L168 Benchmark]: CDTParser took 0.15 ms. Allocated memory is still 1.0 GB. Free memory is still 980.1 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-10 08:36:34,666 INFO L168 Benchmark]: CACSL2BoogieTranslator took 307.13 ms. Allocated memory is still 1.0 GB. Free memory was 952.2 MB in the beginning and 929.6 MB in the end (delta: 22.6 MB). Peak memory consumption was 22.6 MB. Max. memory is 11.5 GB. [2018-11-10 08:36:34,666 INFO L168 Benchmark]: Boogie Procedure Inliner took 69.72 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 165.7 MB). Free memory was 929.6 MB in the beginning and 1.2 GB in the end (delta: -230.5 MB). Peak memory consumption was 15.9 MB. Max. memory is 11.5 GB. [2018-11-10 08:36:34,667 INFO L168 Benchmark]: Boogie Preprocessor took 18.50 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 3.3 MB). Peak memory consumption was 3.3 MB. Max. memory is 11.5 GB. [2018-11-10 08:36:34,667 INFO L168 Benchmark]: RCFGBuilder took 290.42 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: 33.8 MB). Peak memory consumption was 33.8 MB. Max. memory is 11.5 GB. [2018-11-10 08:36:34,668 INFO L168 Benchmark]: BuchiAutomizer took 20814.31 ms. Allocated memory was 1.2 GB in the beginning and 1.6 GB in the end (delta: 431.5 MB). Free memory was 1.1 GB in the beginning and 874.0 MB in the end (delta: 249.0 MB). Peak memory consumption was 680.5 MB. Max. memory is 11.5 GB. [2018-11-10 08:36:34,668 INFO L168 Benchmark]: Witness Printer took 4.48 ms. Allocated memory is still 1.6 GB. Free memory is still 874.0 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-10 08:36:34,670 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.15 ms. Allocated memory is still 1.0 GB. Free memory is still 980.1 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 307.13 ms. Allocated memory is still 1.0 GB. Free memory was 952.2 MB in the beginning and 929.6 MB in the end (delta: 22.6 MB). Peak memory consumption was 22.6 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 69.72 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 165.7 MB). Free memory was 929.6 MB in the beginning and 1.2 GB in the end (delta: -230.5 MB). Peak memory consumption was 15.9 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 18.50 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 3.3 MB). Peak memory consumption was 3.3 MB. Max. memory is 11.5 GB. * RCFGBuilder took 290.42 ms. Allocated memory is still 1.2 GB. Free memory was 1.2 GB in the beginning and 1.1 GB in the end (delta: 33.8 MB). Peak memory consumption was 33.8 MB. Max. memory is 11.5 GB. * BuchiAutomizer took 20814.31 ms. Allocated memory was 1.2 GB in the beginning and 1.6 GB in the end (delta: 431.5 MB). Free memory was 1.1 GB in the beginning and 874.0 MB in the end (delta: 249.0 MB). Peak memory consumption was 680.5 MB. Max. memory is 11.5 GB. * Witness Printer took 4.48 ms. Allocated memory is still 1.6 GB. Free memory is still 874.0 MB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.boogie.preprocessor: - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Nested struct field access of VarList #Ultimate.alloc_#res : $Pointer$ not handled - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Nested struct field access of VarList #Ultimate.alloc_#res : $Pointer$ not handled * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - GenericResult: Unfinished Backtranslation unknown boogie variable #length - GenericResult: Unfinished Backtranslation unknown boogie variable #Ultimate.alloc_#res - 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 #Ultimate.alloc_#res - GenericResult: Unfinished Backtranslation unknown boogie variable #length * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Constructed decomposition of program Your program was decomposed into 14 terminating modules (9 trivial, 4 deterministic, 1 nondeterministic). One deterministic module has affine ranking function -1 * s + unknown-#length-unknown[#Ultimate.alloc_#res] and consists of 7 locations. One deterministic module has affine ranking function -1 * s + unknown-#length-unknown[__builtin_alloca (in_len)] and consists of 7 locations. One deterministic module has affine ranking function unknown-#length-unknown[__builtin_alloca (in_len)] + -1 * haystack and consists of 6 locations. One deterministic module has affine ranking function -1 * s + unknown-#length-unknown[#Ultimate.alloc_#res] and consists of 6 locations. One nondeterministic module has affine ranking function unknown-#length-unknown[hay] + -1 * d and consists of 6 locations. 9 modules have a trivial ranking function, the largest among these consists of 28 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 20.7s and 15 iterations. TraceHistogramMax:4. Analysis of lassos took 16.0s. Construction of modules took 1.0s. Büchi inclusion checks took 3.4s. Highest rank in rank-based complementation 3. Minimization of det autom 1. Minimization of nondet autom 13. Automata minimization 0.0s AutomataMinimizationTime, 13 MinimizatonAttempts, 1003 StatesRemovedByMinimization, 9 NontrivialMinimizations. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had 150 states and ocurred in iteration 13. Nontrivial modules had stage [4, 0, 1, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 754 SDtfs, 2689 SDslu, 3226 SDs, 0 SdLazy, 1931 SolverSat, 254 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 1.0s Time LassoAnalysisResults: nont0 unkn0 SFLI0 SFLT0 conc0 concLT0 SILN0 SILU9 SILI0 SILT0 lasso5 LassoPreprocessingBenchmarks: Lassos: inital294 mio100 ax100 hnf99 lsp89 ukn103 mio100 lsp38 div102 bol100 ite100 ukn100 eq197 hnf86 smp99 dnf138 smp89 tf100 neg99 sie101 LassoTerminationAnalysisBenchmarks: ConstraintsSatisfiability: unsat Degree: 0 Time: 14ms VariablesStem: 3 VariablesLoop: 2 DisjunctsStem: 4 DisjunctsLoop: 2 SupportingInvariants: 4 MotzkinApplications: 28 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...