./Ultimate.py --spec ../../sv-benchmarks/c/properties/termination.prp --file ../../sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 635dfa2a Calling Ultimate with: java -Dosgi.configuration.area=/tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/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_a7849d31-eff9-470b-8f5d-eac135021bc4/bin-2019/uautomizer/config/svcomp-Termination-64bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/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-635dfa2 [2018-12-02 01:14:34,119 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-12-02 01:14:34,120 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-12-02 01:14:34,126 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-12-02 01:14:34,126 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-12-02 01:14:34,127 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-12-02 01:14:34,127 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-12-02 01:14:34,128 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-12-02 01:14:34,129 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-12-02 01:14:34,129 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-12-02 01:14:34,130 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-12-02 01:14:34,130 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-12-02 01:14:34,130 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-12-02 01:14:34,131 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-12-02 01:14:34,131 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-12-02 01:14:34,132 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-12-02 01:14:34,132 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-12-02 01:14:34,133 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-12-02 01:14:34,134 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-12-02 01:14:34,134 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-12-02 01:14:34,135 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-12-02 01:14:34,135 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-12-02 01:14:34,136 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-12-02 01:14:34,137 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-12-02 01:14:34,137 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-12-02 01:14:34,137 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-12-02 01:14:34,137 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-12-02 01:14:34,138 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-12-02 01:14:34,138 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-12-02 01:14:34,139 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-12-02 01:14:34,139 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-12-02 01:14:34,139 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-12-02 01:14:34,139 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-12-02 01:14:34,139 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-12-02 01:14:34,140 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-12-02 01:14:34,140 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-12-02 01:14:34,140 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/bin-2019/uautomizer/config/svcomp-Termination-64bit-Automizer_Default.epf [2018-12-02 01:14:34,148 INFO L110 SettingsManager]: Loading preferences was successful [2018-12-02 01:14:34,148 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-12-02 01:14:34,149 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-12-02 01:14:34,149 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-12-02 01:14:34,149 INFO L133 SettingsManager]: * Use SBE=true [2018-12-02 01:14:34,149 INFO L131 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2018-12-02 01:14:34,149 INFO L133 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2018-12-02 01:14:34,149 INFO L133 SettingsManager]: * Use old map elimination=false [2018-12-02 01:14:34,149 INFO L133 SettingsManager]: * Use external solver (rank synthesis)=false [2018-12-02 01:14:34,149 INFO L133 SettingsManager]: * Use only trivial implications for array writes=true [2018-12-02 01:14:34,149 INFO L133 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2018-12-02 01:14:34,149 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * Assume nondeterminstic values are in range=false [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * Use constant arrays=true [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2018-12-02 01:14:34,150 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-12-02 01:14:34,150 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-12-02 01:14:34,151 INFO L133 SettingsManager]: * To the following directory=/home/matthias/ultimate/dump [2018-12-02 01:14:34,151 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-12-02 01:14:34,151 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-12-02 01:14:34,151 INFO L133 SettingsManager]: * Dump automata to the following directory=/home/matthias/ultimate/dump/auto [2018-12-02 01:14:34,151 INFO L131 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2018-12-02 01:14:34,151 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_a7849d31-eff9-470b-8f5d-eac135021bc4/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-12-02 01:14:34,168 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-12-02 01:14:34,175 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-12-02 01:14:34,178 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-12-02 01:14:34,179 INFO L271 PluginConnector]: Initializing CDTParser... [2018-12-02 01:14:34,179 INFO L276 PluginConnector]: CDTParser initialized [2018-12-02 01:14:34,180 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/bin-2019/uautomizer/../../sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i [2018-12-02 01:14:34,225 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/bin-2019/uautomizer/data/2d63b6ec9/66c19b0260474247bffdae925a227775/FLAGb8c312f62 [2018-12-02 01:14:34,574 INFO L307 CDTParser]: Found 1 translation units. [2018-12-02 01:14:34,574 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/sv-benchmarks/c/termination-libowfat/strstr_true-termination.c.i [2018-12-02 01:14:34,581 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/bin-2019/uautomizer/data/2d63b6ec9/66c19b0260474247bffdae925a227775/FLAGb8c312f62 [2018-12-02 01:14:34,589 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/bin-2019/uautomizer/data/2d63b6ec9/66c19b0260474247bffdae925a227775 [2018-12-02 01:14:34,591 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-12-02 01:14:34,592 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-12-02 01:14:34,592 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-12-02 01:14:34,592 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-12-02 01:14:34,594 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-12-02 01:14:34,595 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,597 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2eda5476 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34, skipping insertion in model container [2018-12-02 01:14:34,597 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,601 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-12-02 01:14:34,620 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-12-02 01:14:34,763 INFO L203 PostProcessor]: Analyzing one entry point: main [2018-12-02 01:14:34,803 INFO L191 MainTranslator]: Completed pre-run [2018-12-02 01:14:34,835 INFO L203 PostProcessor]: Analyzing one entry point: main [2018-12-02 01:14:34,856 INFO L195 MainTranslator]: Completed translation [2018-12-02 01:14:34,856 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34 WrapperNode [2018-12-02 01:14:34,856 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-12-02 01:14:34,857 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-12-02 01:14:34,857 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-12-02 01:14:34,857 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-12-02 01:14:34,862 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,871 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,886 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-12-02 01:14:34,886 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-12-02 01:14:34,886 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-12-02 01:14:34,886 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-12-02 01:14:34,892 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,892 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,894 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,894 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,898 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,901 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,902 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (1/1) ... [2018-12-02 01:14:34,903 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-12-02 01:14:34,903 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-12-02 01:14:34,903 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-12-02 01:14:34,903 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-12-02 01:14:34,904 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/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-12-02 01:14:34,935 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.alloc [2018-12-02 01:14:34,935 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-12-02 01:14:34,935 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-12-02 01:14:34,935 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-12-02 01:14:34,935 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-12-02 01:14:34,935 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-12-02 01:14:35,113 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-12-02 01:14:35,113 INFO L280 CfgBuilder]: Removed 16 assue(true) statements. [2018-12-02 01:14:35,114 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 02.12 01:14:35 BoogieIcfgContainer [2018-12-02 01:14:35,114 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-12-02 01:14:35,114 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2018-12-02 01:14:35,114 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2018-12-02 01:14:35,116 INFO L276 PluginConnector]: BuchiAutomizer initialized [2018-12-02 01:14:35,117 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-12-02 01:14:35,117 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 02.12 01:14:34" (1/3) ... [2018-12-02 01:14:35,117 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@25096cd6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 02.12 01:14:35, skipping insertion in model container [2018-12-02 01:14:35,117 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-12-02 01:14:35,117 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.12 01:14:34" (2/3) ... [2018-12-02 01:14:35,118 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@25096cd6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 02.12 01:14:35, skipping insertion in model container [2018-12-02 01:14:35,118 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-12-02 01:14:35,118 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 02.12 01:14:35" (3/3) ... [2018-12-02 01:14:35,119 INFO L375 chiAutomizerObserver]: Analyzing ICFG strstr_true-termination.c.i [2018-12-02 01:14:35,150 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-12-02 01:14:35,150 INFO L374 BuchiCegarLoop]: Interprodecural is true [2018-12-02 01:14:35,150 INFO L375 BuchiCegarLoop]: Hoare is false [2018-12-02 01:14:35,150 INFO L376 BuchiCegarLoop]: Compute interpolants for ForwardPredicates [2018-12-02 01:14:35,150 INFO L377 BuchiCegarLoop]: Backedges is STRAIGHT_LINE [2018-12-02 01:14:35,150 INFO L378 BuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-12-02 01:14:35,150 INFO L379 BuchiCegarLoop]: Difference is false [2018-12-02 01:14:35,150 INFO L380 BuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-12-02 01:14:35,150 INFO L383 BuchiCegarLoop]: ======== Iteration 0==of CEGAR loop == BuchiCegarLoop======== [2018-12-02 01:14:35,159 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33 states. [2018-12-02 01:14:35,172 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 15 [2018-12-02 01:14:35,172 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:35,172 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:35,176 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2018-12-02 01:14:35,176 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:35,176 INFO L442 BuchiCegarLoop]: ======== Iteration 1============ [2018-12-02 01:14:35,176 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33 states. [2018-12-02 01:14:35,178 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 15 [2018-12-02 01:14:35,178 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:35,178 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:35,178 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2018-12-02 01:14:35,178 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:35,183 INFO L794 eck$LassoCheckResult]: Stem: 28#ULTIMATE.startENTRYtrue #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 9#L-1true havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 14#L541true assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 25#L545true assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 19#L508true assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 23#L509-4true [2018-12-02 01:14:35,183 INFO L796 eck$LassoCheckResult]: Loop: 23#L509-4true call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 29#L509-1true assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 34#L509-3true strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 23#L509-4true [2018-12-02 01:14:35,186 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:35,186 INFO L82 PathProgramCache]: Analyzing trace with hash 28695849, now seen corresponding path program 1 times [2018-12-02 01:14:35,187 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:35,188 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:35,215 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:35,215 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:35,215 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:35,243 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:35,253 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:35,267 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:35,267 INFO L82 PathProgramCache]: Analyzing trace with hash 50806, now seen corresponding path program 1 times [2018-12-02 01:14:35,267 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:35,267 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:35,268 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:35,268 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:35,268 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:35,270 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:35,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:35,275 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:35,275 INFO L82 PathProgramCache]: Analyzing trace with hash 179566670, now seen corresponding path program 1 times [2018-12-02 01:14:35,275 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:35,275 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:35,275 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:35,275 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:35,275 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:35,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:35,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:35,563 WARN L180 SmtUtils]: Spent 216.00 ms on a formula simplification. DAG size of input: 113 DAG size of output: 96 [2018-12-02 01:14:35,638 INFO L216 LassoAnalysis]: Preferences: [2018-12-02 01:14:35,639 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-12-02 01:14:35,639 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-12-02 01:14:35,639 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-12-02 01:14:35,640 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-12-02 01:14:35,640 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-12-02 01:14:35,640 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-12-02 01:14:35,640 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-12-02 01:14:35,640 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration1_Lasso [2018-12-02 01:14:35,640 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-12-02 01:14:35,641 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-12-02 01:14:35,661 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,666 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,668 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,835 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,836 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,838 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,839 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,840 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,841 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,842 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,843 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,845 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,846 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,847 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,849 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,850 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,851 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,852 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,854 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,856 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,857 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,858 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,859 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,860 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,861 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,862 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,863 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:35,864 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,130 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-12-02 01:14:36,134 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-12-02 01:14:36,135 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:36,136 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:36,136 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:36,137 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:36,137 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:36,137 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:36,138 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:36,138 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:36,139 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:36,139 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:36,140 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:36,140 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:36,140 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:36,140 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:36,140 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:36,141 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:36,141 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:36,141 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:36,141 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:36,142 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:36,142 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:36,142 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:36,142 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:36,144 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:36,144 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:36,151 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:36,151 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:36,152 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:36,152 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-12-02 01:14:36,152 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:36,152 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:36,153 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-12-02 01:14:36,154 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:36,160 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:36,161 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:36,161 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:36,161 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:36,161 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:36,161 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:36,163 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:36,163 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:36,190 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-12-02 01:14:36,205 INFO L443 ModelExtractionUtils]: Simplification made 5 calls to the SMT solver. [2018-12-02 01:14:36,205 INFO L444 ModelExtractionUtils]: 25 out of 31 variables were initially zero. Simplification set additionally 3 variables to zero. [2018-12-02 01:14:36,206 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-12-02 01:14:36,207 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-12-02 01:14:36,207 INFO L518 LassoAnalysis]: Proved termination. [2018-12-02 01:14:36,208 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select #length ULTIMATE.start_main_#t~malloc22.base)_1, ULTIMATE.start_strlen_~s.offset) = 1*v_rep(select #length ULTIMATE.start_main_#t~malloc22.base)_1 - 1*ULTIMATE.start_strlen_~s.offset Supporting invariants [] [2018-12-02 01:14:36,228 INFO L297 tatePredicateManager]: 8 out of 9 supporting invariants were superfluous and have been removed [2018-12-02 01:14:36,234 WARN L1298 BoogieBacktranslator]: unknown boogie variable #length [2018-12-02 01:14:36,253 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:36,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:36,268 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:36,278 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:36,278 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:36,308 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:36,317 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 2 loop predicates [2018-12-02 01:14:36,318 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 33 states. Second operand 4 states. [2018-12-02 01:14:36,370 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 33 states.. Second operand 4 states. Result 90 states and 130 transitions. Complement of second has 7 states. [2018-12-02 01:14:36,371 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 1 non-accepting loop states 1 accepting loop states [2018-12-02 01:14:36,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-12-02 01:14:36,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2018-12-02 01:14:36,373 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 85 transitions. Stem has 5 letters. Loop has 3 letters. [2018-12-02 01:14:36,374 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:36,374 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 85 transitions. Stem has 8 letters. Loop has 3 letters. [2018-12-02 01:14:36,374 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:36,375 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 85 transitions. Stem has 5 letters. Loop has 6 letters. [2018-12-02 01:14:36,375 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:36,375 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 90 states and 130 transitions. [2018-12-02 01:14:36,377 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 24 [2018-12-02 01:14:36,380 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 90 states to 47 states and 62 transitions. [2018-12-02 01:14:36,380 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 43 [2018-12-02 01:14:36,381 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 44 [2018-12-02 01:14:36,381 INFO L73 IsDeterministic]: Start isDeterministic. Operand 47 states and 62 transitions. [2018-12-02 01:14:36,381 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:36,381 INFO L705 BuchiCegarLoop]: Abstraction has 47 states and 62 transitions. [2018-12-02 01:14:36,391 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states and 62 transitions. [2018-12-02 01:14:36,397 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 47. [2018-12-02 01:14:36,397 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-12-02 01:14:36,397 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 62 transitions. [2018-12-02 01:14:36,398 INFO L728 BuchiCegarLoop]: Abstraction has 47 states and 62 transitions. [2018-12-02 01:14:36,398 INFO L608 BuchiCegarLoop]: Abstraction has 47 states and 62 transitions. [2018-12-02 01:14:36,398 INFO L442 BuchiCegarLoop]: ======== Iteration 2============ [2018-12-02 01:14:36,398 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states and 62 transitions. [2018-12-02 01:14:36,399 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 24 [2018-12-02 01:14:36,399 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:36,399 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:36,399 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:36,400 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:36,400 INFO L794 eck$LassoCheckResult]: Stem: 247#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 224#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 225#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 232#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 237#L508 assume strlen_~s.base == 0 && strlen_~s.offset == 0;strlen_#res := 0; 239#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 252#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 228#L509-10 [2018-12-02 01:14:36,400 INFO L796 eck$LassoCheckResult]: Loop: 228#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 229#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 251#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 228#L509-10 [2018-12-02 01:14:36,400 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:36,400 INFO L82 PathProgramCache]: Analyzing trace with hash 1806906284, now seen corresponding path program 1 times [2018-12-02 01:14:36,400 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:36,400 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:36,401 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:36,401 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:36,401 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:36,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:36,429 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:36,430 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-12-02 01:14:36,430 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-12-02 01:14:36,431 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-12-02 01:14:36,431 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:36,431 INFO L82 PathProgramCache]: Analyzing trace with hash 72652, now seen corresponding path program 1 times [2018-12-02 01:14:36,431 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:36,431 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:36,432 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:36,432 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:36,432 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:36,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:36,435 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:36,465 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-12-02 01:14:36,465 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-12-02 01:14:36,466 INFO L87 Difference]: Start difference. First operand 47 states and 62 transitions. cyclomatic complexity: 20 Second operand 3 states. [2018-12-02 01:14:36,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-12-02 01:14:36,475 INFO L93 Difference]: Finished difference Result 29 states and 36 transitions. [2018-12-02 01:14:36,475 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-12-02 01:14:36,475 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 29 states and 36 transitions. [2018-12-02 01:14:36,476 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 12 [2018-12-02 01:14:36,476 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 29 states to 29 states and 36 transitions. [2018-12-02 01:14:36,476 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 26 [2018-12-02 01:14:36,476 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 26 [2018-12-02 01:14:36,476 INFO L73 IsDeterministic]: Start isDeterministic. Operand 29 states and 36 transitions. [2018-12-02 01:14:36,477 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:36,477 INFO L705 BuchiCegarLoop]: Abstraction has 29 states and 36 transitions. [2018-12-02 01:14:36,477 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states and 36 transitions. [2018-12-02 01:14:36,477 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2018-12-02 01:14:36,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2018-12-02 01:14:36,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 36 transitions. [2018-12-02 01:14:36,478 INFO L728 BuchiCegarLoop]: Abstraction has 29 states and 36 transitions. [2018-12-02 01:14:36,478 INFO L608 BuchiCegarLoop]: Abstraction has 29 states and 36 transitions. [2018-12-02 01:14:36,478 INFO L442 BuchiCegarLoop]: ======== Iteration 3============ [2018-12-02 01:14:36,478 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 29 states and 36 transitions. [2018-12-02 01:14:36,478 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 12 [2018-12-02 01:14:36,478 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:36,478 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:36,479 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:36,479 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:36,479 INFO L794 eck$LassoCheckResult]: Stem: 324#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 302#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 303#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 311#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 318#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 319#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 321#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 323#L509-5 strlen_#res := strlen_~i~0; 308#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 309#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 305#L509-10 [2018-12-02 01:14:36,479 INFO L796 eck$LassoCheckResult]: Loop: 305#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 310#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 304#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 305#L509-10 [2018-12-02 01:14:36,479 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:36,479 INFO L82 PathProgramCache]: Analyzing trace with hash 764823385, now seen corresponding path program 1 times [2018-12-02 01:14:36,479 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:36,479 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:36,480 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:36,480 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:36,480 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:36,487 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:36,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:36,498 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:36,498 INFO L82 PathProgramCache]: Analyzing trace with hash 72652, now seen corresponding path program 2 times [2018-12-02 01:14:36,498 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:36,498 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:36,499 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:36,499 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:36,499 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:36,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:36,503 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:36,504 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:36,504 INFO L82 PathProgramCache]: Analyzing trace with hash 52000116, now seen corresponding path program 1 times [2018-12-02 01:14:36,504 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:36,504 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:36,505 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:36,505 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:36,505 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:36,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:36,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:36,779 WARN L180 SmtUtils]: Spent 224.00 ms on a formula simplification. DAG size of input: 143 DAG size of output: 115 [2018-12-02 01:14:36,858 INFO L216 LassoAnalysis]: Preferences: [2018-12-02 01:14:36,859 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-12-02 01:14:36,859 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-12-02 01:14:36,859 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-12-02 01:14:36,859 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-12-02 01:14:36,859 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-12-02 01:14:36,859 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-12-02 01:14:36,859 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-12-02 01:14:36,859 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration3_Lasso [2018-12-02 01:14:36,859 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-12-02 01:14:36,859 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-12-02 01:14:36,863 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,864 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,865 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,866 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,867 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,869 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,870 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,871 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,872 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,873 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,873 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,874 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,875 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,876 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,877 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,879 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,880 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,881 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,883 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,884 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,888 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,889 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,890 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,891 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,892 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,893 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:36,894 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:37,068 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:37,303 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-12-02 01:14:37,303 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-12-02 01:14:37,303 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,303 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,304 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,304 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,304 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,304 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,304 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,304 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,305 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,305 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,305 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,305 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,305 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,305 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,305 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,305 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,306 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,306 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,306 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,306 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,307 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,307 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,307 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,307 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,307 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,307 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,307 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,307 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,308 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,308 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,308 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,308 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,308 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,308 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,308 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,309 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,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-12-02 01:14:37,309 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,310 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,310 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,310 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,310 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:37,310 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:37,311 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,311 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,312 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,312 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,312 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,312 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,312 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,312 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,312 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,313 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,313 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,313 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,313 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,313 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,313 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,314 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:37,314 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:37,315 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,315 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,315 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,315 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,316 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,316 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,316 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,316 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,316 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,316 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,316 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,317 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,317 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,317 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,317 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,317 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,317 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,317 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,318 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,318 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,318 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,318 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,318 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,318 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,318 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,319 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,319 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,319 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,319 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,319 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,319 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,319 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,320 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,320 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,320 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,320 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,320 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,320 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,321 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,321 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,321 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,321 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,321 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,321 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,321 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,321 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,322 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,322 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,322 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,322 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,322 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,322 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,322 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,322 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,323 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,323 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,323 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,323 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,323 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,323 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,323 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,324 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,324 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,324 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,324 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,324 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,325 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,325 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,325 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,325 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:37,325 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:37,326 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,326 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,327 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,327 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,327 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,327 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,327 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,327 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,327 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,327 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,328 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,328 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,328 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,328 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,328 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,328 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,329 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,329 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,329 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,329 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,329 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,329 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,330 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,330 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,330 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:37,330 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:37,334 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,334 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,334 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,334 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,334 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,335 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,335 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,335 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,335 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,335 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,335 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,336 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,336 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,336 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,336 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,336 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,336 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,336 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,337 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,337 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,337 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,337 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,337 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,337 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,337 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,337 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,337 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,338 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,338 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,338 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,338 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,338 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,338 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,338 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,339 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,339 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,339 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,339 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,339 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,340 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,340 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,340 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,340 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,340 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,340 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,340 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,340 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,341 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,341 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,341 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,341 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,341 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,341 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,341 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,341 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,342 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,342 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,342 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,342 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,342 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,342 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,342 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,342 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,343 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,343 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,343 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,343 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:37,343 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,343 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,343 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,344 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:37,344 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:37,344 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,344 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,344 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,345 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,345 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,345 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,345 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:37,345 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:37,346 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,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-12-02 01:14:37,347 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,347 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-12-02 01:14:37,347 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,347 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,348 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-12-02 01:14:37,348 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:37,354 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,354 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:37,355 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,355 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,355 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,355 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,355 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:37,355 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:37,356 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:37,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-12-02 01:14:37,357 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:37,357 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:37,357 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:37,357 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:37,359 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:37,359 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:37,368 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-12-02 01:14:37,378 INFO L443 ModelExtractionUtils]: Simplification made 5 calls to the SMT solver. [2018-12-02 01:14:37,378 INFO L444 ModelExtractionUtils]: 44 out of 49 variables were initially zero. Simplification set additionally 2 variables to zero. [2018-12-02 01:14:37,379 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-12-02 01:14:37,379 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-12-02 01:14:37,380 INFO L518 LassoAnalysis]: Proved termination. [2018-12-02 01:14:37,380 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_strlen_~s.offset, v_rep(select #length ULTIMATE.start_main_#t~malloc20.base)_2) = -1*ULTIMATE.start_strlen_~s.offset + 1*v_rep(select #length ULTIMATE.start_main_#t~malloc20.base)_2 Supporting invariants [] [2018-12-02 01:14:37,415 INFO L297 tatePredicateManager]: 11 out of 12 supporting invariants were superfluous and have been removed [2018-12-02 01:14:37,417 WARN L1298 BoogieBacktranslator]: unknown boogie variable #length [2018-12-02 01:14:37,441 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:37,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:37,451 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:37,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:37,467 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:37,478 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:37,478 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-12-02 01:14:37,478 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 29 states and 36 transitions. cyclomatic complexity: 10 Second operand 6 states. [2018-12-02 01:14:37,536 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 29 states and 36 transitions. cyclomatic complexity: 10. Second operand 6 states. Result 57 states and 72 transitions. Complement of second has 7 states. [2018-12-02 01:14:37,536 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 4 stem states 1 non-accepting loop states 1 accepting loop states [2018-12-02 01:14:37,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-12-02 01:14:37,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 48 transitions. [2018-12-02 01:14:37,537 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 48 transitions. Stem has 10 letters. Loop has 3 letters. [2018-12-02 01:14:37,537 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:37,537 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 48 transitions. Stem has 13 letters. Loop has 3 letters. [2018-12-02 01:14:37,537 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:37,537 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 48 transitions. Stem has 10 letters. Loop has 6 letters. [2018-12-02 01:14:37,537 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:37,537 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 57 states and 72 transitions. [2018-12-02 01:14:37,538 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2018-12-02 01:14:37,538 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 57 states to 43 states and 54 transitions. [2018-12-02 01:14:37,538 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 36 [2018-12-02 01:14:37,538 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 37 [2018-12-02 01:14:37,538 INFO L73 IsDeterministic]: Start isDeterministic. Operand 43 states and 54 transitions. [2018-12-02 01:14:37,538 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:37,539 INFO L705 BuchiCegarLoop]: Abstraction has 43 states and 54 transitions. [2018-12-02 01:14:37,539 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states and 54 transitions. [2018-12-02 01:14:37,539 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 31. [2018-12-02 01:14:37,540 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-12-02 01:14:37,540 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 39 transitions. [2018-12-02 01:14:37,540 INFO L728 BuchiCegarLoop]: Abstraction has 31 states and 39 transitions. [2018-12-02 01:14:37,540 INFO L608 BuchiCegarLoop]: Abstraction has 31 states and 39 transitions. [2018-12-02 01:14:37,540 INFO L442 BuchiCegarLoop]: ======== Iteration 4============ [2018-12-02 01:14:37,540 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 39 transitions. [2018-12-02 01:14:37,540 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 9 [2018-12-02 01:14:37,540 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:37,540 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:37,541 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:37,541 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-12-02 01:14:37,541 INFO L794 eck$LassoCheckResult]: Stem: 534#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 514#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 515#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 523#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 528#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 529#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 531#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 533#L509-5 strlen_#res := strlen_~i~0; 516#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 517#L508-2 assume strlen_~s.base == 0 && strlen_~s.offset == 0;strlen_#res := 0; 521#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 522#L529 assume !(0 == strstr_~nl~0 % 4294967296); 524#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 525#L531-3 [2018-12-02 01:14:37,541 INFO L796 eck$LassoCheckResult]: Loop: 525#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 512#L532 assume !strstr_#t~short17; 513#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;havoc strstr_#t~mem14;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 527#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 525#L531-3 [2018-12-02 01:14:37,541 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:37,541 INFO L82 PathProgramCache]: Analyzing trace with hash 51953446, now seen corresponding path program 1 times [2018-12-02 01:14:37,541 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:37,541 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:37,542 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:37,542 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:37,542 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:37,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:37,575 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:37,575 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-12-02 01:14:37,575 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-12-02 01:14:37,575 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-12-02 01:14:37,575 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:37,575 INFO L82 PathProgramCache]: Analyzing trace with hash 3227613, now seen corresponding path program 1 times [2018-12-02 01:14:37,576 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:37,576 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:37,576 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:37,576 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:37,576 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:37,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:37,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:37,662 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-12-02 01:14:37,663 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-12-02 01:14:37,663 INFO L87 Difference]: Start difference. First operand 31 states and 39 transitions. cyclomatic complexity: 11 Second operand 5 states. [2018-12-02 01:14:37,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-12-02 01:14:37,689 INFO L93 Difference]: Finished difference Result 31 states and 38 transitions. [2018-12-02 01:14:37,690 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-12-02 01:14:37,690 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 31 states and 38 transitions. [2018-12-02 01:14:37,691 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 9 [2018-12-02 01:14:37,691 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 31 states to 31 states and 38 transitions. [2018-12-02 01:14:37,691 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25 [2018-12-02 01:14:37,691 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2018-12-02 01:14:37,691 INFO L73 IsDeterministic]: Start isDeterministic. Operand 31 states and 38 transitions. [2018-12-02 01:14:37,692 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:37,692 INFO L705 BuchiCegarLoop]: Abstraction has 31 states and 38 transitions. [2018-12-02 01:14:37,692 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states and 38 transitions. [2018-12-02 01:14:37,693 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2018-12-02 01:14:37,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-12-02 01:14:37,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 38 transitions. [2018-12-02 01:14:37,694 INFO L728 BuchiCegarLoop]: Abstraction has 31 states and 38 transitions. [2018-12-02 01:14:37,694 INFO L608 BuchiCegarLoop]: Abstraction has 31 states and 38 transitions. [2018-12-02 01:14:37,694 INFO L442 BuchiCegarLoop]: ======== Iteration 5============ [2018-12-02 01:14:37,694 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 38 transitions. [2018-12-02 01:14:37,694 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 9 [2018-12-02 01:14:37,694 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:37,694 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:37,695 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:37,695 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-12-02 01:14:37,695 INFO L794 eck$LassoCheckResult]: Stem: 606#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 582#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 583#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 593#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 600#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 601#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 603#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 605#L509-5 strlen_#res := strlen_~i~0; 588#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 589#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 590#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 592#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 596#L509-11 strlen_#res := strlen_~i~0; 594#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 595#L529 assume !(0 == strstr_~nl~0 % 4294967296); 597#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 598#L531-3 [2018-12-02 01:14:37,695 INFO L796 eck$LassoCheckResult]: Loop: 598#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 586#L532 assume !strstr_#t~short17; 587#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;havoc strstr_#t~mem14;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 599#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 598#L531-3 [2018-12-02 01:14:37,695 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:37,695 INFO L82 PathProgramCache]: Analyzing trace with hash -1349410205, now seen corresponding path program 1 times [2018-12-02 01:14:37,695 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:37,695 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:37,697 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:37,697 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:37,697 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:37,702 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:37,724 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:37,724 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-12-02 01:14:37,724 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-12-02 01:14:37,724 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-12-02 01:14:37,724 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:37,724 INFO L82 PathProgramCache]: Analyzing trace with hash 3227613, now seen corresponding path program 2 times [2018-12-02 01:14:37,725 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:37,725 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:37,725 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:37,725 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:37,725 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:37,728 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:37,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:37,807 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-12-02 01:14:37,807 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-12-02 01:14:37,807 INFO L87 Difference]: Start difference. First operand 31 states and 38 transitions. cyclomatic complexity: 10 Second operand 5 states. [2018-12-02 01:14:37,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-12-02 01:14:37,841 INFO L93 Difference]: Finished difference Result 64 states and 74 transitions. [2018-12-02 01:14:37,842 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-12-02 01:14:37,842 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 64 states and 74 transitions. [2018-12-02 01:14:37,843 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2018-12-02 01:14:37,843 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 64 states to 47 states and 56 transitions. [2018-12-02 01:14:37,843 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 39 [2018-12-02 01:14:37,844 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 39 [2018-12-02 01:14:37,844 INFO L73 IsDeterministic]: Start isDeterministic. Operand 47 states and 56 transitions. [2018-12-02 01:14:37,844 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:37,844 INFO L705 BuchiCegarLoop]: Abstraction has 47 states and 56 transitions. [2018-12-02 01:14:37,844 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states and 56 transitions. [2018-12-02 01:14:37,845 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 31. [2018-12-02 01:14:37,845 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-12-02 01:14:37,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 37 transitions. [2018-12-02 01:14:37,845 INFO L728 BuchiCegarLoop]: Abstraction has 31 states and 37 transitions. [2018-12-02 01:14:37,846 INFO L608 BuchiCegarLoop]: Abstraction has 31 states and 37 transitions. [2018-12-02 01:14:37,846 INFO L442 BuchiCegarLoop]: ======== Iteration 6============ [2018-12-02 01:14:37,846 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 37 transitions. [2018-12-02 01:14:37,846 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 9 [2018-12-02 01:14:37,846 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:37,846 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:37,847 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:37,847 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-12-02 01:14:37,847 INFO L794 eck$LassoCheckResult]: Stem: 715#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 695#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 696#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 704#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 709#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 710#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 711#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 716#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 712#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 713#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 714#L509-5 strlen_#res := strlen_~i~0; 697#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 698#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 699#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 700#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 705#L509-11 strlen_#res := strlen_~i~0; 702#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 703#L529 assume !(0 == strstr_~nl~0 % 4294967296); 706#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 707#L531-3 [2018-12-02 01:14:37,847 INFO L796 eck$LassoCheckResult]: Loop: 707#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 693#L532 assume !strstr_#t~short17; 694#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;havoc strstr_#t~mem14;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 708#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 707#L531-3 [2018-12-02 01:14:37,847 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:37,847 INFO L82 PathProgramCache]: Analyzing trace with hash -1796108770, now seen corresponding path program 1 times [2018-12-02 01:14:37,847 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:37,847 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:37,848 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:37,848 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:37,848 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:37,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:37,971 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:37,971 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-12-02 01:14:37,971 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/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-12-02 01:14:37,979 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:37,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:37,995 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:38,028 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2018-12-02 01:14:38,044 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-12-02 01:14:38,044 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 12 [2018-12-02 01:14:38,044 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-12-02 01:14:38,044 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:38,044 INFO L82 PathProgramCache]: Analyzing trace with hash 3227613, now seen corresponding path program 3 times [2018-12-02 01:14:38,044 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:38,044 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:38,045 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:38,045 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:38,045 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:38,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:38,048 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:38,113 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-12-02 01:14:38,113 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=124, Unknown=0, NotChecked=0, Total=156 [2018-12-02 01:14:38,113 INFO L87 Difference]: Start difference. First operand 31 states and 37 transitions. cyclomatic complexity: 9 Second operand 13 states. [2018-12-02 01:14:38,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-12-02 01:14:38,309 INFO L93 Difference]: Finished difference Result 103 states and 121 transitions. [2018-12-02 01:14:38,310 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-12-02 01:14:38,310 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 103 states and 121 transitions. [2018-12-02 01:14:38,311 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 36 [2018-12-02 01:14:38,311 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 103 states to 93 states and 111 transitions. [2018-12-02 01:14:38,311 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 72 [2018-12-02 01:14:38,312 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 72 [2018-12-02 01:14:38,312 INFO L73 IsDeterministic]: Start isDeterministic. Operand 93 states and 111 transitions. [2018-12-02 01:14:38,312 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:38,312 INFO L705 BuchiCegarLoop]: Abstraction has 93 states and 111 transitions. [2018-12-02 01:14:38,312 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states and 111 transitions. [2018-12-02 01:14:38,313 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 31. [2018-12-02 01:14:38,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2018-12-02 01:14:38,314 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 36 transitions. [2018-12-02 01:14:38,314 INFO L728 BuchiCegarLoop]: Abstraction has 31 states and 36 transitions. [2018-12-02 01:14:38,314 INFO L608 BuchiCegarLoop]: Abstraction has 31 states and 36 transitions. [2018-12-02 01:14:38,314 INFO L442 BuchiCegarLoop]: ======== Iteration 7============ [2018-12-02 01:14:38,314 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 36 transitions. [2018-12-02 01:14:38,314 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 9 [2018-12-02 01:14:38,314 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:38,315 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:38,315 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:38,315 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2018-12-02 01:14:38,315 INFO L794 eck$LassoCheckResult]: Stem: 938#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 916#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 917#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 925#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 932#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 933#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 934#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 939#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 935#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 936#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 937#L509-5 strlen_#res := strlen_~i~0; 920#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 921#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 922#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 923#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 918#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 919#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 924#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 929#L509-11 strlen_#res := strlen_~i~0; 926#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 927#L529 assume !(0 == strstr_~nl~0 % 4294967296); 930#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 931#L531-3 [2018-12-02 01:14:38,315 INFO L796 eck$LassoCheckResult]: Loop: 931#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 914#L532 assume !strstr_#t~short17; 915#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;havoc strstr_#t~mem14;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 928#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 931#L531-3 [2018-12-02 01:14:38,315 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:38,316 INFO L82 PathProgramCache]: Analyzing trace with hash -1624521053, now seen corresponding path program 1 times [2018-12-02 01:14:38,316 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:38,316 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:38,316 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:38,316 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:38,316 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:38,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:38,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:38,333 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:38,333 INFO L82 PathProgramCache]: Analyzing trace with hash 3227613, now seen corresponding path program 4 times [2018-12-02 01:14:38,333 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:38,333 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:38,334 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:38,334 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:38,334 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:38,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:38,337 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:38,338 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:38,338 INFO L82 PathProgramCache]: Analyzing trace with hash 16049535, now seen corresponding path program 1 times [2018-12-02 01:14:38,338 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:38,338 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:38,339 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:38,339 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:38,339 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:38,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:38,352 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:38,820 WARN L180 SmtUtils]: Spent 411.00 ms on a formula simplification. DAG size of input: 207 DAG size of output: 159 [2018-12-02 01:14:38,913 INFO L216 LassoAnalysis]: Preferences: [2018-12-02 01:14:38,914 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-12-02 01:14:38,914 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-12-02 01:14:38,914 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-12-02 01:14:38,914 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-12-02 01:14:38,914 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-12-02 01:14:38,914 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-12-02 01:14:38,914 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-12-02 01:14:38,914 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration7_Lasso [2018-12-02 01:14:38,914 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-12-02 01:14:38,914 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-12-02 01:14:38,916 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,917 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,918 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,919 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,920 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,921 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,921 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,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-12-02 01:14:38,923 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,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-12-02 01:14:38,925 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,932 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,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-12-02 01:14:38,935 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,935 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,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-12-02 01:14:38,937 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,938 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,939 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,940 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,940 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,941 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,942 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:38,943 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:39,224 WARN L180 SmtUtils]: Spent 127.00 ms on a formula simplification. DAG size of input: 101 DAG size of output: 85 [2018-12-02 01:14:39,301 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:39,635 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-12-02 01:14:39,636 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-12-02 01:14:39,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-12-02 01:14:39,636 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,636 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,636 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,636 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,637 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,637 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,637 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,637 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,637 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,638 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,638 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,638 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,638 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,638 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,638 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,638 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,638 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,639 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,639 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,639 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,639 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,639 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,639 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,639 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,639 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,640 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,640 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,640 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,640 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,640 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,640 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,640 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:39,641 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:39,641 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,642 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,642 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,642 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,642 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,642 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,642 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,642 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,642 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,642 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,643 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,643 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,643 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,643 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,643 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,643 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,643 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,643 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,644 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,644 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,644 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,644 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,644 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,644 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,644 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,644 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,644 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,645 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,645 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,645 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,645 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,645 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,645 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,645 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,645 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,646 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,646 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,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-12-02 01:14:39,646 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,646 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,646 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,646 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,646 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,647 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,647 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,647 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,647 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,647 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,647 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,647 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,647 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,648 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,648 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,648 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,648 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,648 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,648 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,648 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,649 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,649 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,649 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:39,650 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:39,654 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,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-12-02 01:14:39,655 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,655 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,655 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,655 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,655 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:39,656 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:39,656 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,656 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,657 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,657 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,657 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,657 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,657 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,657 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,657 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,657 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,658 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,658 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,658 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,658 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,658 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,658 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,658 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,658 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,658 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,659 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,659 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,659 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,659 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,659 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,659 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,659 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,659 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,659 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,660 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,660 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,660 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,660 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,660 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,660 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,660 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,660 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,660 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,661 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,661 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,661 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,661 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,661 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,661 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:39,661 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:39,662 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,662 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,662 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,662 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,663 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,663 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,663 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,663 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,663 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,663 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,663 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,663 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,664 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,664 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,664 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,664 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,664 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,664 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,664 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,664 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,665 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,665 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,665 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,665 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,665 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,665 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,665 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,665 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,665 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,666 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,666 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,666 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,666 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,666 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,666 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,666 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,666 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,666 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,667 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,667 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,667 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,667 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,667 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,667 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,667 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,667 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,667 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,667 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,668 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:39,668 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,668 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,668 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,668 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:39,668 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:39,668 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,668 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,668 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,669 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,669 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,669 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,669 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:39,669 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:39,670 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:39,670 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:39,670 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:39,670 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:39,670 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:39,670 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:39,672 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:39,672 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:39,684 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-12-02 01:14:39,701 INFO L443 ModelExtractionUtils]: Simplification made 7 calls to the SMT solver. [2018-12-02 01:14:39,701 INFO L444 ModelExtractionUtils]: 43 out of 52 variables were initially zero. Simplification set additionally 6 variables to zero. [2018-12-02 01:14:39,702 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-12-02 01:14:39,702 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-12-02 01:14:39,702 INFO L518 LassoAnalysis]: Proved termination. [2018-12-02 01:14:39,702 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_strstr_~haystack.offset, v_rep(select #length ULTIMATE.start_main_#t~malloc20.base)_3) = -1*ULTIMATE.start_strstr_~haystack.offset + 1*v_rep(select #length ULTIMATE.start_main_#t~malloc20.base)_3 Supporting invariants [] [2018-12-02 01:14:39,780 INFO L297 tatePredicateManager]: 30 out of 31 supporting invariants were superfluous and have been removed [2018-12-02 01:14:39,782 WARN L1298 BoogieBacktranslator]: unknown boogie variable #length [2018-12-02 01:14:39,794 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:39,806 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:39,807 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:39,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:39,821 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:39,843 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:39,843 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-12-02 01:14:39,844 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 31 states and 36 transitions. cyclomatic complexity: 8 Second operand 6 states. [2018-12-02 01:14:39,876 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 31 states and 36 transitions. cyclomatic complexity: 8. Second operand 6 states. Result 41 states and 51 transitions. Complement of second has 8 states. [2018-12-02 01:14:39,877 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-12-02 01:14:39,877 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-12-02 01:14:39,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 33 transitions. [2018-12-02 01:14:39,877 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 33 transitions. Stem has 22 letters. Loop has 4 letters. [2018-12-02 01:14:39,877 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:39,877 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 33 transitions. Stem has 26 letters. Loop has 4 letters. [2018-12-02 01:14:39,877 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:39,877 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 33 transitions. Stem has 22 letters. Loop has 8 letters. [2018-12-02 01:14:39,878 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:39,878 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 41 states and 51 transitions. [2018-12-02 01:14:39,878 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-12-02 01:14:39,878 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 41 states to 38 states and 45 transitions. [2018-12-02 01:14:39,879 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 21 [2018-12-02 01:14:39,879 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 23 [2018-12-02 01:14:39,879 INFO L73 IsDeterministic]: Start isDeterministic. Operand 38 states and 45 transitions. [2018-12-02 01:14:39,879 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:39,879 INFO L705 BuchiCegarLoop]: Abstraction has 38 states and 45 transitions. [2018-12-02 01:14:39,879 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states and 45 transitions. [2018-12-02 01:14:39,880 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 37. [2018-12-02 01:14:39,880 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 37 states. [2018-12-02 01:14:39,880 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 44 transitions. [2018-12-02 01:14:39,880 INFO L728 BuchiCegarLoop]: Abstraction has 37 states and 44 transitions. [2018-12-02 01:14:39,881 INFO L608 BuchiCegarLoop]: Abstraction has 37 states and 44 transitions. [2018-12-02 01:14:39,881 INFO L442 BuchiCegarLoop]: ======== Iteration 8============ [2018-12-02 01:14:39,881 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 37 states and 44 transitions. [2018-12-02 01:14:39,881 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-12-02 01:14:39,881 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:39,881 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:39,881 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:39,881 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:39,881 INFO L794 eck$LassoCheckResult]: Stem: 1251#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1226#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 1227#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 1238#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1245#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1246#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1247#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1252#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1248#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1249#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1250#L509-5 strlen_#res := strlen_~i~0; 1233#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1234#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1235#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1236#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1228#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1229#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1237#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1241#L509-11 strlen_#res := strlen_~i~0; 1239#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 1240#L529 assume !(0 == strstr_~nl~0 % 4294967296); 1242#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 1243#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1230#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 1223#L517-3 [2018-12-02 01:14:39,881 INFO L796 eck$LassoCheckResult]: Loop: 1223#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1218#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 1219#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 1223#L517-3 [2018-12-02 01:14:39,882 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:39,882 INFO L82 PathProgramCache]: Analyzing trace with hash -2091601114, now seen corresponding path program 1 times [2018-12-02 01:14:39,882 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:39,882 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:39,882 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:39,882 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:39,882 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:39,891 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:39,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:39,904 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:39,904 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 1 times [2018-12-02 01:14:39,904 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:39,904 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:39,905 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:39,905 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:39,905 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:39,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:39,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:39,911 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:39,912 INFO L82 PathProgramCache]: Analyzing trace with hash 496824785, now seen corresponding path program 1 times [2018-12-02 01:14:39,912 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:39,912 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:39,912 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:39,912 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:39,912 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:39,921 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:39,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:40,673 WARN L180 SmtUtils]: Spent 686.00 ms on a formula simplification. DAG size of input: 266 DAG size of output: 197 [2018-12-02 01:14:40,837 WARN L180 SmtUtils]: Spent 160.00 ms on a formula simplification that was a NOOP. DAG size: 146 [2018-12-02 01:14:40,839 INFO L216 LassoAnalysis]: Preferences: [2018-12-02 01:14:40,839 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-12-02 01:14:40,839 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-12-02 01:14:40,839 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-12-02 01:14:40,839 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-12-02 01:14:40,839 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-12-02 01:14:40,840 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-12-02 01:14:40,840 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-12-02 01:14:40,840 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration8_Lasso [2018-12-02 01:14:40,840 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-12-02 01:14:40,840 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-12-02 01:14:40,844 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:40,847 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:40,849 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:40,850 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:40,852 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:40,853 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:40,854 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:40,855 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:40,856 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,377 WARN L180 SmtUtils]: Spent 232.00 ms on a formula simplification. DAG size of input: 145 DAG size of output: 120 [2018-12-02 01:14:41,513 WARN L180 SmtUtils]: Spent 109.00 ms on a formula simplification. DAG size of input: 91 DAG size of output: 76 [2018-12-02 01:14:41,513 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,514 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,515 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,516 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,516 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,518 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,519 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,519 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,529 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,530 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,531 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,532 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,533 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,533 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,534 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,535 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,536 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,537 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,537 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,538 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,539 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,540 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:41,756 WARN L180 SmtUtils]: Spent 114.00 ms on a formula simplification. DAG size of input: 70 DAG size of output: 65 [2018-12-02 01:14:42,195 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-12-02 01:14:42,195 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-12-02 01:14:42,195 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,196 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,196 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:42,196 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,196 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,196 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,196 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:42,197 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:42,197 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,197 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,198 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,198 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:42,198 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,198 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,198 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,198 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:42,198 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:42,199 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,199 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,199 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,199 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:42,200 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,200 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,200 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,200 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:42,200 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:42,200 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,201 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,201 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,201 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:42,201 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,201 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,201 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,202 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:42,202 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:42,202 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,202 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,203 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,203 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:42,203 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,203 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,203 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,203 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:42,203 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:42,204 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,204 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,204 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,204 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:42,205 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,205 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,205 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,205 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:42,205 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:42,205 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,206 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,206 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,206 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,206 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,206 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,207 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:42,207 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:42,208 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,208 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,208 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,208 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:42,209 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,209 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,209 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,209 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:42,209 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:42,209 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,210 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,210 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,210 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,210 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,210 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,211 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:42,211 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:42,212 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,212 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,212 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,212 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,212 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,212 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,213 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:42,213 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:42,214 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,214 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,214 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,214 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,214 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,215 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,215 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:42,215 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:42,216 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,216 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,216 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,216 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,216 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,217 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,217 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:42,217 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:42,218 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,218 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,218 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,219 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-12-02 01:14:42,219 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,219 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,220 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-12-02 01:14:42,220 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:42,226 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,226 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,227 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,227 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,227 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,227 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,227 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:42,228 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:42,228 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,229 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,229 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,229 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,229 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,229 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,230 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:42,230 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:42,233 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,233 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,233 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,233 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-12-02 01:14:42,234 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,234 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,235 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-12-02 01:14:42,235 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:42,242 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:42,242 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:42,242 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:42,242 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:42,242 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:42,243 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:42,245 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:42,245 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:42,266 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-12-02 01:14:42,284 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2018-12-02 01:14:42,285 INFO L444 ModelExtractionUtils]: 66 out of 70 variables were initially zero. Simplification set additionally 1 variables to zero. [2018-12-02 01:14:42,285 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-12-02 01:14:42,285 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-12-02 01:14:42,286 INFO L518 LassoAnalysis]: Proved termination. [2018-12-02 01:14:42,286 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_memcmp_~d~0.offset, v_rep(select #length ULTIMATE.start_memcmp_~d~0.base)_1) = -1*ULTIMATE.start_memcmp_~d~0.offset + 1*v_rep(select #length ULTIMATE.start_memcmp_~d~0.base)_1 Supporting invariants [] [2018-12-02 01:14:42,409 INFO L297 tatePredicateManager]: 45 out of 45 supporting invariants were superfluous and have been removed [2018-12-02 01:14:42,410 WARN L1298 BoogieBacktranslator]: unknown boogie variable #length [2018-12-02 01:14:42,416 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:42,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:42,430 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:42,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:42,435 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:42,442 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:42,442 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2018-12-02 01:14:42,442 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 37 states and 44 transitions. cyclomatic complexity: 11 Second operand 4 states. [2018-12-02 01:14:42,454 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 37 states and 44 transitions. cyclomatic complexity: 11. Second operand 4 states. Result 84 states and 102 transitions. Complement of second has 7 states. [2018-12-02 01:14:42,454 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2018-12-02 01:14:42,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2018-12-02 01:14:42,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 41 transitions. [2018-12-02 01:14:42,455 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 41 transitions. Stem has 24 letters. Loop has 3 letters. [2018-12-02 01:14:42,455 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:42,455 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 41 transitions. Stem has 27 letters. Loop has 3 letters. [2018-12-02 01:14:42,455 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:42,455 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 41 transitions. Stem has 24 letters. Loop has 6 letters. [2018-12-02 01:14:42,455 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:42,455 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 84 states and 102 transitions. [2018-12-02 01:14:42,456 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-12-02 01:14:42,457 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 84 states to 61 states and 74 transitions. [2018-12-02 01:14:42,457 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 26 [2018-12-02 01:14:42,457 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 26 [2018-12-02 01:14:42,458 INFO L73 IsDeterministic]: Start isDeterministic. Operand 61 states and 74 transitions. [2018-12-02 01:14:42,458 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:42,458 INFO L705 BuchiCegarLoop]: Abstraction has 61 states and 74 transitions. [2018-12-02 01:14:42,458 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states and 74 transitions. [2018-12-02 01:14:42,459 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 46. [2018-12-02 01:14:42,459 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 46 states. [2018-12-02 01:14:42,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 55 transitions. [2018-12-02 01:14:42,460 INFO L728 BuchiCegarLoop]: Abstraction has 46 states and 55 transitions. [2018-12-02 01:14:42,460 INFO L608 BuchiCegarLoop]: Abstraction has 46 states and 55 transitions. [2018-12-02 01:14:42,460 INFO L442 BuchiCegarLoop]: ======== Iteration 9============ [2018-12-02 01:14:42,460 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 46 states and 55 transitions. [2018-12-02 01:14:42,460 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-12-02 01:14:42,460 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:42,460 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:42,460 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:42,460 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:42,461 INFO L794 eck$LassoCheckResult]: Stem: 1660#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1639#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 1640#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 1648#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1654#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1655#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1656#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1661#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1657#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1658#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1659#L509-5 strlen_#res := strlen_~i~0; 1641#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1642#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1643#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1644#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1633#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1634#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1645#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1649#L509-11 strlen_#res := strlen_~i~0; 1646#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 1647#L529 assume !(0 == strstr_~nl~0 % 4294967296); 1650#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 1651#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1636#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 1638#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1666#L517-1 assume !(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6; 1631#L517-4 memcmp_#res := 0; 1632#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 1652#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;havoc strstr_#t~mem14;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 1653#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 1663#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1635#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 1628#L517-3 [2018-12-02 01:14:42,461 INFO L796 eck$LassoCheckResult]: Loop: 1628#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1624#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 1625#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 1628#L517-3 [2018-12-02 01:14:42,461 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:42,461 INFO L82 PathProgramCache]: Analyzing trace with hash 1259680368, now seen corresponding path program 1 times [2018-12-02 01:14:42,461 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:42,461 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:42,461 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:42,461 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:42,461 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:42,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:42,476 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-12-02 01:14:42,476 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-12-02 01:14:42,476 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-12-02 01:14:42,476 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-12-02 01:14:42,476 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:42,477 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 2 times [2018-12-02 01:14:42,477 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:42,477 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:42,477 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:42,477 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:42,477 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:42,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:42,482 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:42,529 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-12-02 01:14:42,529 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-12-02 01:14:42,529 INFO L87 Difference]: Start difference. First operand 46 states and 55 transitions. cyclomatic complexity: 15 Second operand 4 states. [2018-12-02 01:14:42,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-12-02 01:14:42,539 INFO L93 Difference]: Finished difference Result 48 states and 56 transitions. [2018-12-02 01:14:42,539 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-12-02 01:14:42,539 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 48 states and 56 transitions. [2018-12-02 01:14:42,540 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-12-02 01:14:42,540 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 48 states to 45 states and 52 transitions. [2018-12-02 01:14:42,540 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2018-12-02 01:14:42,540 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22 [2018-12-02 01:14:42,540 INFO L73 IsDeterministic]: Start isDeterministic. Operand 45 states and 52 transitions. [2018-12-02 01:14:42,541 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:42,541 INFO L705 BuchiCegarLoop]: Abstraction has 45 states and 52 transitions. [2018-12-02 01:14:42,541 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states and 52 transitions. [2018-12-02 01:14:42,541 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 45. [2018-12-02 01:14:42,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 45 states. [2018-12-02 01:14:42,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 52 transitions. [2018-12-02 01:14:42,542 INFO L728 BuchiCegarLoop]: Abstraction has 45 states and 52 transitions. [2018-12-02 01:14:42,542 INFO L608 BuchiCegarLoop]: Abstraction has 45 states and 52 transitions. [2018-12-02 01:14:42,542 INFO L442 BuchiCegarLoop]: ======== Iteration 10============ [2018-12-02 01:14:42,542 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 45 states and 52 transitions. [2018-12-02 01:14:42,542 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-12-02 01:14:42,542 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:42,543 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:42,543 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:42,543 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:42,543 INFO L794 eck$LassoCheckResult]: Stem: 1760#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1734#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 1735#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 1746#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1753#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1754#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1755#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1761#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1756#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1757#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1758#L509-5 strlen_#res := strlen_~i~0; 1741#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 1742#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 1743#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1744#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 1736#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 1737#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 1745#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 1749#L509-11 strlen_#res := strlen_~i~0; 1747#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 1748#L529 assume !(0 == strstr_~nl~0 % 4294967296); 1750#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 1751#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1767#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 1765#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1729#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 1730#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 1759#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 1740#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;havoc strstr_#t~mem14;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 1752#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 1763#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 1738#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 1731#L517-3 [2018-12-02 01:14:42,543 INFO L796 eck$LassoCheckResult]: Loop: 1731#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 1727#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 1728#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 1731#L517-3 [2018-12-02 01:14:42,543 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:42,544 INFO L82 PathProgramCache]: Analyzing trace with hash -1432054472, now seen corresponding path program 1 times [2018-12-02 01:14:42,544 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:42,544 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:42,544 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:42,544 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:42,544 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:42,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:42,639 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:42,639 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-12-02 01:14:42,639 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/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-12-02 01:14:42,645 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:42,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:42,666 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:42,679 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 11 [2018-12-02 01:14:42,681 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 10 [2018-12-02 01:14:42,681 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-12-02 01:14:42,682 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-12-02 01:14:42,683 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-12-02 01:14:42,683 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:14, output treesize:10 [2018-12-02 01:14:42,758 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 39 treesize of output 37 [2018-12-02 01:14:42,764 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 33 treesize of output 31 [2018-12-02 01:14:42,765 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 2 xjuncts. [2018-12-02 01:14:42,794 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 29 treesize of output 35 [2018-12-02 01:14:42,795 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 4 xjuncts. [2018-12-02 01:14:42,807 INFO L267 ElimStorePlain]: Start of recursive call 2: 3 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-12-02 01:14:42,808 INFO L267 ElimStorePlain]: Start of recursive call 1: 6 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2018-12-02 01:14:42,808 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 7 variables, input treesize:39, output treesize:3 [2018-12-02 01:14:42,827 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-12-02 01:14:42,843 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-12-02 01:14:42,843 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [12] total 16 [2018-12-02 01:14:42,844 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-12-02 01:14:42,844 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:42,844 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 3 times [2018-12-02 01:14:42,844 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:42,844 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:42,844 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:42,844 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:42,844 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:42,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:42,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:42,907 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-12-02 01:14:42,907 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=208, Unknown=0, NotChecked=0, Total=240 [2018-12-02 01:14:42,907 INFO L87 Difference]: Start difference. First operand 45 states and 52 transitions. cyclomatic complexity: 13 Second operand 16 states. [2018-12-02 01:14:44,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-12-02 01:14:44,068 INFO L93 Difference]: Finished difference Result 182 states and 203 transitions. [2018-12-02 01:14:44,068 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2018-12-02 01:14:44,069 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 182 states and 203 transitions. [2018-12-02 01:14:44,070 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2018-12-02 01:14:44,071 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 182 states to 151 states and 171 transitions. [2018-12-02 01:14:44,071 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 58 [2018-12-02 01:14:44,071 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 58 [2018-12-02 01:14:44,071 INFO L73 IsDeterministic]: Start isDeterministic. Operand 151 states and 171 transitions. [2018-12-02 01:14:44,071 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:44,071 INFO L705 BuchiCegarLoop]: Abstraction has 151 states and 171 transitions. [2018-12-02 01:14:44,072 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 151 states and 171 transitions. [2018-12-02 01:14:44,076 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 151 to 60. [2018-12-02 01:14:44,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 60 states. [2018-12-02 01:14:44,076 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 68 transitions. [2018-12-02 01:14:44,076 INFO L728 BuchiCegarLoop]: Abstraction has 60 states and 68 transitions. [2018-12-02 01:14:44,077 INFO L608 BuchiCegarLoop]: Abstraction has 60 states and 68 transitions. [2018-12-02 01:14:44,077 INFO L442 BuchiCegarLoop]: ======== Iteration 11============ [2018-12-02 01:14:44,077 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 60 states and 68 transitions. [2018-12-02 01:14:44,077 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-12-02 01:14:44,077 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:44,077 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:44,078 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:44,078 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:44,078 INFO L794 eck$LassoCheckResult]: Stem: 2155#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 2126#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 2127#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 2135#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 2143#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2144#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2147#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2158#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2148#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2149#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2164#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2165#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2156#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2157#L509-5 strlen_#res := strlen_~i~0; 2130#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 2131#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2132#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2133#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2128#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2129#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2153#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2140#L509-11 strlen_#res := strlen_~i~0; 2136#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 2137#L529 assume !(0 == strstr_~nl~0 % 4294967296); 2141#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 2142#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2162#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 2121#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2118#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2119#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 2174#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2173#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2168#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 2154#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 2124#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;havoc strstr_#t~mem14;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 2167#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 2166#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2122#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 2120#L517-3 [2018-12-02 01:14:44,079 INFO L796 eck$LassoCheckResult]: Loop: 2120#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2116#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2117#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 2120#L517-3 [2018-12-02 01:14:44,079 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:44,079 INFO L82 PathProgramCache]: Analyzing trace with hash 1690748232, now seen corresponding path program 1 times [2018-12-02 01:14:44,079 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:44,079 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:44,080 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:44,080 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:44,080 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:44,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:44,193 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 1 proven. 9 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-12-02 01:14:44,193 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-12-02 01:14:44,193 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/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-12-02 01:14:44,201 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:44,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:44,236 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:44,250 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 11 [2018-12-02 01:14:44,252 INFO L478 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 10 [2018-12-02 01:14:44,253 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-12-02 01:14:44,254 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-12-02 01:14:44,269 INFO L267 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: 2 dim-0 vars, and 1 xjuncts. [2018-12-02 01:14:44,269 INFO L202 ElimStorePlain]: Needed 3 recursive calls to eliminate 3 variables, input treesize:24, output treesize:20 [2018-12-02 01:14:44,532 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-12-02 01:14:44,554 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-12-02 01:14:44,554 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 23 [2018-12-02 01:14:44,554 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-12-02 01:14:44,554 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:44,554 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 4 times [2018-12-02 01:14:44,554 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:44,554 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:44,555 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:44,555 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:44,555 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:44,557 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:44,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:44,601 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2018-12-02 01:14:44,601 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=455, Unknown=0, NotChecked=0, Total=506 [2018-12-02 01:14:44,601 INFO L87 Difference]: Start difference. First operand 60 states and 68 transitions. cyclomatic complexity: 14 Second operand 23 states. [2018-12-02 01:14:46,018 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-12-02 01:14:46,018 INFO L93 Difference]: Finished difference Result 286 states and 329 transitions. [2018-12-02 01:14:46,018 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 47 states. [2018-12-02 01:14:46,018 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 286 states and 329 transitions. [2018-12-02 01:14:46,019 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 15 [2018-12-02 01:14:46,020 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 286 states to 279 states and 322 transitions. [2018-12-02 01:14:46,020 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 76 [2018-12-02 01:14:46,020 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 76 [2018-12-02 01:14:46,020 INFO L73 IsDeterministic]: Start isDeterministic. Operand 279 states and 322 transitions. [2018-12-02 01:14:46,020 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:46,020 INFO L705 BuchiCegarLoop]: Abstraction has 279 states and 322 transitions. [2018-12-02 01:14:46,020 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 279 states and 322 transitions. [2018-12-02 01:14:46,023 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 279 to 88. [2018-12-02 01:14:46,023 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 88 states. [2018-12-02 01:14:46,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 100 transitions. [2018-12-02 01:14:46,023 INFO L728 BuchiCegarLoop]: Abstraction has 88 states and 100 transitions. [2018-12-02 01:14:46,023 INFO L608 BuchiCegarLoop]: Abstraction has 88 states and 100 transitions. [2018-12-02 01:14:46,023 INFO L442 BuchiCegarLoop]: ======== Iteration 12============ [2018-12-02 01:14:46,023 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 88 states and 100 transitions. [2018-12-02 01:14:46,023 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-12-02 01:14:46,024 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:46,024 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:46,024 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:46,024 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:46,024 INFO L794 eck$LassoCheckResult]: Stem: 2724#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 2696#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 2697#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 2706#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 2714#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2715#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2717#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2725#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2741#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2720#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2721#L509-5 strlen_#res := strlen_~i~0; 2700#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 2701#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 2716#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2734#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2733#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2704#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2705#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 2698#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 2699#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 2722#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 2711#L509-11 strlen_#res := strlen_~i~0; 2707#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 2708#L529 assume !(0 == strstr_~nl~0 % 4294967296); 2712#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 2713#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2728#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 2692#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2689#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2690#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 2727#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2766#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2743#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 2723#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 2695#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;havoc strstr_#t~mem14;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 2731#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 2730#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 2693#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 2691#L517-3 [2018-12-02 01:14:46,024 INFO L796 eck$LassoCheckResult]: Loop: 2691#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 2687#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 2688#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 2691#L517-3 [2018-12-02 01:14:46,024 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:46,024 INFO L82 PathProgramCache]: Analyzing trace with hash -2138077336, now seen corresponding path program 2 times [2018-12-02 01:14:46,024 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:46,025 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:46,025 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,025 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:46,025 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,031 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:46,080 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 3 proven. 4 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-12-02 01:14:46,081 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-12-02 01:14:46,081 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/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-12-02 01:14:46,087 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-12-02 01:14:46,115 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-12-02 01:14:46,115 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-12-02 01:14:46,117 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:46,132 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 3 proven. 4 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2018-12-02 01:14:46,149 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-12-02 01:14:46,149 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 10 [2018-12-02 01:14:46,149 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-12-02 01:14:46,149 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:46,149 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 5 times [2018-12-02 01:14:46,149 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:46,149 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:46,150 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,150 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:46,150 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:46,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:46,196 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-12-02 01:14:46,196 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2018-12-02 01:14:46,196 INFO L87 Difference]: Start difference. First operand 88 states and 100 transitions. cyclomatic complexity: 19 Second operand 10 states. [2018-12-02 01:14:46,273 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-12-02 01:14:46,273 INFO L93 Difference]: Finished difference Result 143 states and 161 transitions. [2018-12-02 01:14:46,274 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-12-02 01:14:46,274 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 143 states and 161 transitions. [2018-12-02 01:14:46,274 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2018-12-02 01:14:46,275 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 143 states to 115 states and 131 transitions. [2018-12-02 01:14:46,275 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 38 [2018-12-02 01:14:46,275 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 38 [2018-12-02 01:14:46,275 INFO L73 IsDeterministic]: Start isDeterministic. Operand 115 states and 131 transitions. [2018-12-02 01:14:46,275 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:46,275 INFO L705 BuchiCegarLoop]: Abstraction has 115 states and 131 transitions. [2018-12-02 01:14:46,276 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states and 131 transitions. [2018-12-02 01:14:46,278 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 88. [2018-12-02 01:14:46,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 88 states. [2018-12-02 01:14:46,278 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 99 transitions. [2018-12-02 01:14:46,279 INFO L728 BuchiCegarLoop]: Abstraction has 88 states and 99 transitions. [2018-12-02 01:14:46,279 INFO L608 BuchiCegarLoop]: Abstraction has 88 states and 99 transitions. [2018-12-02 01:14:46,279 INFO L442 BuchiCegarLoop]: ======== Iteration 13============ [2018-12-02 01:14:46,279 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 88 states and 99 transitions. [2018-12-02 01:14:46,279 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-12-02 01:14:46,279 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:46,279 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:46,280 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:46,280 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:46,280 INFO L794 eck$LassoCheckResult]: Stem: 3094#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 3060#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 3061#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 3072#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 3080#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3081#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3084#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3108#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3085#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3086#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3117#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3109#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3110#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3087#L509-5 strlen_#res := strlen_~i~0; 3088#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 3082#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3083#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3116#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3062#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3063#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3071#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3091#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3112#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3113#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3075#L509-11 strlen_#res := strlen_~i~0; 3076#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 3099#L529 assume !(0 == strstr_~nl~0 % 4294967296); 3100#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 3104#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3105#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 3059#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3056#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3057#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3103#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3136#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3120#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 3121#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 3122#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;havoc strstr_#t~mem14;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 3119#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 3118#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3064#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 3058#L517-3 [2018-12-02 01:14:46,280 INFO L796 eck$LassoCheckResult]: Loop: 3058#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3054#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3055#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3058#L517-3 [2018-12-02 01:14:46,281 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:46,281 INFO L82 PathProgramCache]: Analyzing trace with hash 1050158307, now seen corresponding path program 3 times [2018-12-02 01:14:46,281 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:46,281 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:46,281 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,281 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:46,281 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,290 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:46,387 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 1 proven. 15 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-12-02 01:14:46,388 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-12-02 01:14:46,388 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_a7849d31-eff9-470b-8f5d-eac135021bc4/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-12-02 01:14:46,395 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST2 [2018-12-02 01:14:46,427 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2018-12-02 01:14:46,427 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-12-02 01:14:46,429 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:46,496 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 1 proven. 15 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-12-02 01:14:46,510 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-12-02 01:14:46,511 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 19 [2018-12-02 01:14:46,511 INFO L799 eck$LassoCheckResult]: stem already infeasible [2018-12-02 01:14:46,511 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:46,511 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 6 times [2018-12-02 01:14:46,511 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:46,511 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:46,512 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,512 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:46,512 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:46,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:46,561 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2018-12-02 01:14:46,562 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=293, Unknown=0, NotChecked=0, Total=342 [2018-12-02 01:14:46,562 INFO L87 Difference]: Start difference. First operand 88 states and 99 transitions. cyclomatic complexity: 18 Second operand 19 states. [2018-12-02 01:14:46,720 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-12-02 01:14:46,721 INFO L93 Difference]: Finished difference Result 211 states and 240 transitions. [2018-12-02 01:14:46,721 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-12-02 01:14:46,721 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 211 states and 240 transitions. [2018-12-02 01:14:46,722 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 12 [2018-12-02 01:14:46,722 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 211 states to 190 states and 218 transitions. [2018-12-02 01:14:46,722 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 60 [2018-12-02 01:14:46,722 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 60 [2018-12-02 01:14:46,723 INFO L73 IsDeterministic]: Start isDeterministic. Operand 190 states and 218 transitions. [2018-12-02 01:14:46,723 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-12-02 01:14:46,723 INFO L705 BuchiCegarLoop]: Abstraction has 190 states and 218 transitions. [2018-12-02 01:14:46,723 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 190 states and 218 transitions. [2018-12-02 01:14:46,725 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 190 to 91. [2018-12-02 01:14:46,726 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 91 states. [2018-12-02 01:14:46,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 102 transitions. [2018-12-02 01:14:46,726 INFO L728 BuchiCegarLoop]: Abstraction has 91 states and 102 transitions. [2018-12-02 01:14:46,726 INFO L608 BuchiCegarLoop]: Abstraction has 91 states and 102 transitions. [2018-12-02 01:14:46,726 INFO L442 BuchiCegarLoop]: ======== Iteration 14============ [2018-12-02 01:14:46,727 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 91 states and 102 transitions. [2018-12-02 01:14:46,727 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2018-12-02 01:14:46,727 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-12-02 01:14:46,727 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-12-02 01:14:46,728 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-12-02 01:14:46,728 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1] [2018-12-02 01:14:46,728 INFO L794 eck$LassoCheckResult]: Stem: 3544#ULTIMATE.startENTRY #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 3516#L-1 havoc main_#res;havoc main_#t~nondet19, main_#t~malloc20.base, main_#t~malloc20.offset, main_#t~nondet21, main_#t~malloc22.base, main_#t~malloc22.offset, main_#t~ret23.base, main_#t~ret23.offset, main_~in_len~0, main_~hay~0.base, main_~hay~0.offset, main_~out_len~0, main_~needle~0.base, main_~needle~0.offset;main_~in_len~0 := main_#t~nondet19;havoc main_#t~nondet19; 3517#L541 assume !(main_~in_len~0 < 1);call main_#t~malloc20.base, main_#t~malloc20.offset := #Ultimate.alloc(main_~in_len~0);main_~hay~0.base, main_~hay~0.offset := main_#t~malloc20.base, main_#t~malloc20.offset;call write~int(0, main_~hay~0.base, main_~hay~0.offset + (main_~in_len~0 - 1), 1);main_~out_len~0 := main_#t~nondet21;havoc main_#t~nondet21; 3526#L545 assume !(main_~out_len~0 < 1);call main_#t~malloc22.base, main_#t~malloc22.offset := #Ultimate.alloc(main_~out_len~0);main_~needle~0.base, main_~needle~0.offset := main_#t~malloc22.base, main_#t~malloc22.offset;call write~int(0, main_~needle~0.base, main_~needle~0.offset + (main_~out_len~0 - 1), 1);strstr_#in~haystack.base, strstr_#in~haystack.offset, strstr_#in~needle.base, strstr_#in~needle.offset := main_~hay~0.base, main_~hay~0.offset, main_~needle~0.base, main_~needle~0.offset;havoc strstr_#res.base, strstr_#res.offset;havoc strstr_#t~ret11, strstr_#t~ret12, strstr_#t~mem14, strstr_#t~mem15, strstr_#t~ret16, strstr_#t~short17, strstr_#t~pre18.base, strstr_#t~pre18.offset, strstr_#t~pre13, strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0, strstr_~hl~0, strstr_~i~1;strstr_~haystack.base, strstr_~haystack.offset := strstr_#in~haystack.base, strstr_#in~haystack.offset;strstr_~needle.base, strstr_~needle.offset := strstr_#in~needle.base, strstr_#in~needle.offset;strlen_#in~s.base, strlen_#in~s.offset := strstr_~needle.base, strstr_~needle.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 3532#L508 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3533#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3536#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3554#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3537#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3538#L509-1 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3557#L509-3 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3558#L509-4 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3545#L509-1 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3546#L509-5 strlen_#res := strlen_~i~0; 3518#L510 strstr_#t~ret11 := strlen_#res;strstr_~nl~0 := strstr_#t~ret11;havoc strstr_#t~ret11;strlen_#in~s.base, strlen_#in~s.offset := strstr_~haystack.base, strstr_~haystack.offset;havoc strlen_#res;havoc strlen_#t~pre3, strlen_#t~pre2.base, strlen_#t~pre2.offset, strlen_#t~mem4, strlen_~s.base, strlen_~s.offset, strlen_~i~0;strlen_~s.base, strlen_~s.offset := strlen_#in~s.base, strlen_#in~s.offset;havoc strlen_~i~0; 3519#L508-2 assume !(strlen_~s.base == 0 && strlen_~s.offset == 0);strlen_~i~0 := 0; 3520#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3521#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3511#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3512#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3565#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3566#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3522#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3523#L509-7 assume !!(0 != strlen_#t~mem4);havoc strlen_#t~mem4;strlen_#t~pre3 := 1 + strlen_~i~0;strlen_~i~0 := 1 + strlen_~i~0;havoc strlen_#t~pre3; 3542#L509-9 strlen_#t~pre2.base, strlen_#t~pre2.offset := strlen_~s.base, 1 + strlen_~s.offset;strlen_~s.base, strlen_~s.offset := strlen_~s.base, 1 + strlen_~s.offset;havoc strlen_#t~pre2.base, strlen_#t~pre2.offset; 3559#L509-10 call strlen_#t~mem4 := read~int(strlen_~s.base, strlen_~s.offset, 1); 3541#L509-7 assume !(0 != strlen_#t~mem4);havoc strlen_#t~mem4; 3527#L509-11 strlen_#res := strlen_~i~0; 3524#L510-1 strstr_#t~ret12 := strlen_#res;strstr_~hl~0 := strstr_#t~ret12;havoc strstr_#t~ret12;havoc strstr_~i~1; 3525#L529 assume !(0 == strstr_~nl~0 % 4294967296); 3528#L530 assume !(strstr_~nl~0 % 4294967296 > strstr_~hl~0 % 4294967296);strstr_~i~1 := 1 + (strstr_~hl~0 - strstr_~nl~0); 3529#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3551#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 3510#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3507#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3508#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3550#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3590#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3584#L518 assume 0 != memcmp_~r~0;havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#res := memcmp_~r~0; 3563#L523 strstr_#t~ret16 := memcmp_#res;strstr_#t~short17 := 0 == strstr_#t~ret16; 3562#L532-2 assume !strstr_#t~short17;havoc strstr_#t~mem15;havoc strstr_#t~ret16;havoc strstr_#t~short17;havoc strstr_#t~mem14;strstr_#t~pre18.base, strstr_#t~pre18.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;strstr_~haystack.base, strstr_~haystack.offset := strstr_~haystack.base, 1 + strstr_~haystack.offset;havoc strstr_#t~pre18.base, strstr_#t~pre18.offset; 3561#L531-2 strstr_#t~pre13 := strstr_~i~1 - 1;strstr_~i~1 := strstr_~i~1 - 1;havoc strstr_#t~pre13; 3560#L531-3 assume !!(0 != strstr_~i~1 % 4294967296);call strstr_#t~mem14 := read~int(strstr_~haystack.base, strstr_~haystack.offset, 1);call strstr_#t~mem15 := read~int(strstr_~needle.base, strstr_~needle.offset, 1);strstr_#t~short17 := strstr_#t~mem14 == strstr_#t~mem15; 3513#L532 assume strstr_#t~short17;memcmp_#in~dst.base, memcmp_#in~dst.offset, memcmp_#in~src.base, memcmp_#in~src.offset, memcmp_#in~count := strstr_~haystack.base, strstr_~haystack.offset, strstr_~needle.base, strstr_~needle.offset, strstr_~nl~0;havoc memcmp_#res;havoc memcmp_#t~pre5, memcmp_#t~mem7, memcmp_#t~mem8, memcmp_#t~pre9.base, memcmp_#t~pre9.offset, memcmp_#t~pre10.base, memcmp_#t~pre10.offset, memcmp_#t~pre6, memcmp_~dst.base, memcmp_~dst.offset, memcmp_~src.base, memcmp_~src.offset, memcmp_~count, memcmp_~r~0, memcmp_~d~0.base, memcmp_~d~0.offset, memcmp_~s~0.base, memcmp_~s~0.offset;memcmp_~dst.base, memcmp_~dst.offset := memcmp_#in~dst.base, memcmp_#in~dst.offset;memcmp_~src.base, memcmp_~src.offset := memcmp_#in~src.base, memcmp_#in~src.offset;memcmp_~count := memcmp_#in~count;havoc memcmp_~r~0;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~dst.base, memcmp_~dst.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~src.base, memcmp_~src.offset;memcmp_#t~pre5 := 1 + memcmp_~count;memcmp_~count := 1 + memcmp_~count;havoc memcmp_#t~pre5; 3509#L517-3 [2018-12-02 01:14:46,728 INFO L796 eck$LassoCheckResult]: Loop: 3509#L517-3 memcmp_#t~pre6 := memcmp_~count - 1;memcmp_~count := memcmp_~count - 1; 3505#L517-1 assume !!(0 != memcmp_#t~pre6 % 4294967296);havoc memcmp_#t~pre6;call memcmp_#t~mem7 := read~int(memcmp_~d~0.base, memcmp_~d~0.offset, 1);call memcmp_#t~mem8 := read~int(memcmp_~s~0.base, memcmp_~s~0.offset, 1);memcmp_~r~0 := memcmp_#t~mem7 % 256 - memcmp_#t~mem8 % 256; 3506#L518 assume !(0 != memcmp_~r~0);havoc memcmp_#t~mem8;havoc memcmp_#t~mem7;memcmp_#t~pre9.base, memcmp_#t~pre9.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;memcmp_~d~0.base, memcmp_~d~0.offset := memcmp_~d~0.base, 1 + memcmp_~d~0.offset;havoc memcmp_#t~pre9.base, memcmp_#t~pre9.offset;memcmp_#t~pre10.base, memcmp_#t~pre10.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;memcmp_~s~0.base, memcmp_~s~0.offset := memcmp_~s~0.base, 1 + memcmp_~s~0.offset;havoc memcmp_#t~pre10.base, memcmp_#t~pre10.offset; 3509#L517-3 [2018-12-02 01:14:46,729 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:46,729 INFO L82 PathProgramCache]: Analyzing trace with hash -224601240, now seen corresponding path program 4 times [2018-12-02 01:14:46,729 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:46,729 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:46,729 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,730 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:46,730 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:46,763 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:46,769 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:46,769 INFO L82 PathProgramCache]: Analyzing trace with hash 111382, now seen corresponding path program 7 times [2018-12-02 01:14:46,769 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:46,769 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:46,770 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,770 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-12-02 01:14:46,770 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:46,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:46,775 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:46,775 INFO L82 PathProgramCache]: Analyzing trace with hash 463587919, now seen corresponding path program 5 times [2018-12-02 01:14:46,775 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-12-02 01:14:46,775 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-12-02 01:14:46,776 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,776 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-12-02 01:14:46,776 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-12-02 01:14:46,795 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:46,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-12-02 01:14:48,772 WARN L180 SmtUtils]: Spent 1.89 s on a formula simplification. DAG size of input: 472 DAG size of output: 340 [2018-12-02 01:14:48,983 WARN L180 SmtUtils]: Spent 203.00 ms on a formula simplification that was a NOOP. DAG size: 167 [2018-12-02 01:14:48,985 INFO L216 LassoAnalysis]: Preferences: [2018-12-02 01:14:48,985 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-12-02 01:14:48,985 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-12-02 01:14:48,985 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-12-02 01:14:48,985 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-12-02 01:14:48,985 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-12-02 01:14:48,985 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-12-02 01:14:48,985 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-12-02 01:14:48,985 INFO L131 ssoRankerPreferences]: Filename of dumped script: strstr_true-termination.c.i_Iteration14_Lasso [2018-12-02 01:14:48,985 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-12-02 01:14:48,985 INFO L282 LassoAnalysis]: Starting lasso preprocessing... [2018-12-02 01:14:48,987 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:48,988 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:48,992 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:48,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-12-02 01:14:48,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-12-02 01:14:48,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-12-02 01:14:49,780 WARN L180 SmtUtils]: Spent 310.00 ms on a formula simplification. DAG size of input: 178 DAG size of output: 140 [2018-12-02 01:14:49,966 WARN L180 SmtUtils]: Spent 136.00 ms on a formula simplification. DAG size of input: 115 DAG size of output: 92 [2018-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,970 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:49,971 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:49,971 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,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-12-02 01:14:49,997 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:49,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-12-02 01:14:50,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-12-02 01:14:50,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-12-02 01:14:50,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-12-02 01:14:50,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-12-02 01:14:50,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-12-02 01:14:50,011 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:50,011 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-12-02 01:14:50,663 WARN L180 SmtUtils]: Spent 338.00 ms on a formula simplification. DAG size of input: 66 DAG size of output: 62 [2018-12-02 01:14:50,944 INFO L300 LassoAnalysis]: Preprocessing complete. [2018-12-02 01:14:50,944 INFO L497 LassoAnalysis]: Using template 'affine'. [2018-12-02 01:14:50,944 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:50,944 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,944 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:50,945 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,945 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,945 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,945 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:50,945 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:50,945 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,945 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:50,945 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,945 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:50,946 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,946 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,946 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,946 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:50,946 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:50,946 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,946 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:50,946 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,946 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:50,946 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,946 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,946 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,947 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:50,947 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:50,947 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,947 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:50,947 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,947 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:50,947 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,947 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,947 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,947 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:50,948 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:50,948 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,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-12-02 01:14:50,948 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,948 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-12-02 01:14:50,948 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,948 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,948 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,948 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-12-02 01:14:50,948 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-12-02 01:14:50,949 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,949 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:50,949 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,949 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,949 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,949 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,949 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:50,949 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:50,950 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,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-12-02 01:14:50,950 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,950 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,951 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,951 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,951 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:50,951 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:50,951 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,952 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:50,952 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,952 INFO L205 nArgumentSynthesizer]: 4 stem disjuncts [2018-12-02 01:14:50,952 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,952 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,954 INFO L402 nArgumentSynthesizer]: We have 12 Motzkin's Theorem applications. [2018-12-02 01:14:50,954 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:50,961 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,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-12-02 01:14:50,961 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,962 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-12-02 01:14:50,962 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,962 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,962 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-12-02 01:14:50,962 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:50,965 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,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-12-02 01:14:50,966 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,966 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,966 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,966 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,966 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:50,966 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:50,968 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,968 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:50,968 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,968 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-12-02 01:14:50,968 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,968 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,969 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-12-02 01:14:50,969 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:50,973 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,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-12-02 01:14:50,973 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,973 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,973 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,974 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,974 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:50,974 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:50,975 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,975 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:50,976 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,976 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,976 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,976 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,976 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:50,976 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:50,977 INFO L530 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-12-02 01:14:50,977 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-12-02 01:14:50,977 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-12-02 01:14:50,977 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-12-02 01:14:50,977 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-12-02 01:14:50,977 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-12-02 01:14:50,979 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-12-02 01:14:50,979 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-12-02 01:14:50,991 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-12-02 01:14:51,000 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2018-12-02 01:14:51,000 INFO L444 ModelExtractionUtils]: 72 out of 76 variables were initially zero. Simplification set additionally 1 variables to zero. [2018-12-02 01:14:51,000 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-12-02 01:14:51,001 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-12-02 01:14:51,001 INFO L518 LassoAnalysis]: Proved termination. [2018-12-02 01:14:51,001 INFO L520 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select #length ULTIMATE.start_strstr_#in~haystack.base)_1, ULTIMATE.start_memcmp_~d~0.offset) = 1*v_rep(select #length ULTIMATE.start_strstr_#in~haystack.base)_1 - 1*ULTIMATE.start_memcmp_~d~0.offset Supporting invariants [] [2018-12-02 01:14:51,349 INFO L297 tatePredicateManager]: 92 out of 94 supporting invariants were superfluous and have been removed [2018-12-02 01:14:51,351 WARN L1298 BoogieBacktranslator]: unknown boogie variable #length [2018-12-02 01:14:51,368 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:51,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:51,394 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:51,413 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:51,414 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:51,426 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:51,426 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-12-02 01:14:51,426 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18 Second operand 6 states. [2018-12-02 01:14:51,472 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18. Second operand 6 states. Result 118 states and 135 transitions. Complement of second has 9 states. [2018-12-02 01:14:51,472 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-12-02 01:14:51,472 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-12-02 01:14:51,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 34 transitions. [2018-12-02 01:14:51,473 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 34 transitions. Stem has 44 letters. Loop has 3 letters. [2018-12-02 01:14:51,473 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:51,473 INFO L642 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2018-12-02 01:14:51,485 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:51,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:51,512 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:51,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:51,533 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:51,559 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:51,560 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-12-02 01:14:51,560 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18 Second operand 6 states. [2018-12-02 01:14:51,593 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18. Second operand 6 states. Result 118 states and 135 transitions. Complement of second has 9 states. [2018-12-02 01:14:51,593 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-12-02 01:14:51,594 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-12-02 01:14:51,594 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 34 transitions. [2018-12-02 01:14:51,594 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 34 transitions. Stem has 44 letters. Loop has 3 letters. [2018-12-02 01:14:51,594 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:51,594 INFO L642 RefineBuchi]: Bad chosen interpolant automaton: word not accepted [2018-12-02 01:14:51,606 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-12-02 01:14:51,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:51,630 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:51,648 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-12-02 01:14:51,649 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-12-02 01:14:51,658 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-12-02 01:14:51,658 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-12-02 01:14:51,658 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18 Second operand 6 states. [2018-12-02 01:14:51,699 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 91 states and 102 transitions. cyclomatic complexity: 18. Second operand 6 states. Result 118 states and 135 transitions. Complement of second has 8 states. [2018-12-02 01:14:51,699 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-12-02 01:14:51,699 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2018-12-02 01:14:51,699 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2018-12-02 01:14:51,699 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 40 transitions. Stem has 44 letters. Loop has 3 letters. [2018-12-02 01:14:51,700 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:51,700 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 40 transitions. Stem has 47 letters. Loop has 3 letters. [2018-12-02 01:14:51,700 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:51,700 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 40 transitions. Stem has 44 letters. Loop has 6 letters. [2018-12-02 01:14:51,700 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-12-02 01:14:51,700 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 118 states and 135 transitions. [2018-12-02 01:14:51,702 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2018-12-02 01:14:51,702 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 118 states to 0 states and 0 transitions. [2018-12-02 01:14:51,702 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2018-12-02 01:14:51,702 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2018-12-02 01:14:51,702 INFO L73 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2018-12-02 01:14:51,702 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2018-12-02 01:14:51,702 INFO L705 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-12-02 01:14:51,702 INFO L728 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-12-02 01:14:51,702 INFO L608 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-12-02 01:14:51,702 INFO L442 BuchiCegarLoop]: ======== Iteration 15============ [2018-12-02 01:14:51,702 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2018-12-02 01:14:51,702 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2018-12-02 01:14:51,702 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2018-12-02 01:14:51,706 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 02.12 01:14:51 BoogieIcfgContainer [2018-12-02 01:14:51,706 INFO L132 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2018-12-02 01:14:51,707 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-12-02 01:14:51,707 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-12-02 01:14:51,707 INFO L276 PluginConnector]: Witness Printer initialized [2018-12-02 01:14:51,707 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 02.12 01:14:35" (3/4) ... [2018-12-02 01:14:51,709 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-12-02 01:14:51,709 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-12-02 01:14:51,710 INFO L168 Benchmark]: Toolchain (without parser) took 17118.64 ms. Allocated memory was 1.0 GB in the beginning and 1.4 GB in the end (delta: 409.5 MB). Free memory was 951.7 MB in the beginning and 1.3 GB in the end (delta: -393.7 MB). Peak memory consumption was 15.8 MB. Max. memory is 11.5 GB. [2018-12-02 01:14:51,710 INFO L168 Benchmark]: CDTParser took 0.15 ms. Allocated memory is still 1.0 GB. Free memory is still 979.6 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-12-02 01:14:51,711 INFO L168 Benchmark]: CACSL2BoogieTranslator took 264.36 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 102.2 MB). Free memory was 951.7 MB in the beginning and 1.1 GB in the end (delta: -137.3 MB). Peak memory consumption was 30.0 MB. Max. memory is 11.5 GB. [2018-12-02 01:14:51,711 INFO L168 Benchmark]: Boogie Procedure Inliner took 29.16 ms. Allocated memory is still 1.1 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-12-02 01:14:51,711 INFO L168 Benchmark]: Boogie Preprocessor took 16.85 ms. Allocated memory is still 1.1 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-12-02 01:14:51,711 INFO L168 Benchmark]: RCFGBuilder took 210.57 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 25.1 MB). Peak memory consumption was 25.1 MB. Max. memory is 11.5 GB. [2018-12-02 01:14:51,712 INFO L168 Benchmark]: BuchiAutomizer took 16592.30 ms. Allocated memory was 1.1 GB in the beginning and 1.4 GB in the end (delta: 307.2 MB). Free memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: -284.2 MB). Peak memory consumption was 23.1 MB. Max. memory is 11.5 GB. [2018-12-02 01:14:51,712 INFO L168 Benchmark]: Witness Printer took 2.91 ms. Allocated memory is still 1.4 GB. Free memory is still 1.3 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-12-02 01:14:51,713 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 979.6 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 264.36 ms. Allocated memory was 1.0 GB in the beginning and 1.1 GB in the end (delta: 102.2 MB). Free memory was 951.7 MB in the beginning and 1.1 GB in the end (delta: -137.3 MB). Peak memory consumption was 30.0 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 29.16 ms. Allocated memory is still 1.1 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * Boogie Preprocessor took 16.85 ms. Allocated memory is still 1.1 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 210.57 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 25.1 MB). Peak memory consumption was 25.1 MB. Max. memory is 11.5 GB. * BuchiAutomizer took 16592.30 ms. Allocated memory was 1.1 GB in the beginning and 1.4 GB in the end (delta: 307.2 MB). Free memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: -284.2 MB). Peak memory consumption was 23.1 MB. Max. memory is 11.5 GB. * Witness Printer took 2.91 ms. Allocated memory is still 1.4 GB. Free memory is still 1.3 GB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - GenericResult: Unfinished Backtranslation unknown boogie variable #length - GenericResult: Unfinished Backtranslation unknown boogie variable #length - GenericResult: Unfinished Backtranslation unknown boogie variable #length - GenericResult: Unfinished Backtranslation unknown boogie variable #length - GenericResult: Unfinished Backtranslation unknown boogie variable #length * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Constructed decomposition of program Your program was decomposed into 14 terminating modules (9 trivial, 4 deterministic, 1 nondeterministic). One deterministic module has affine ranking function unknown-#length-unknown[__builtin_alloca (out_len)] + -1 * s and consists of 5 locations. One deterministic module has affine ranking function -1 * s + unknown-#length-unknown[__builtin_alloca (in_len)] and consists of 6 locations. One deterministic module has affine ranking function -1 * haystack + unknown-#length-unknown[__builtin_alloca (in_len)] and consists of 6 locations. One deterministic module has affine ranking function -1 * d + unknown-#length-unknown[d] and consists of 4 locations. One nondeterministic module has affine ranking function unknown-#length-unknown[haystack] + -1 * d and consists of 6 locations. 9 modules have a trivial ranking function, the largest among these consists of 23 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 16.5s and 15 iterations. TraceHistogramMax:4. Analysis of lassos took 12.5s. Construction of modules took 1.0s. Büchi inclusion checks took 2.8s. Highest rank in rank-based complementation 3. Minimization of det autom 1. Minimization of nondet autom 13. Automata minimization 0.0s AutomataMinimizationTime, 13 MinimizatonAttempts, 514 StatesRemovedByMinimization, 9 NontrivialMinimizations. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had 91 states and ocurred in iteration 13. Nontrivial modules had stage [4, 0, 1, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 482 SDtfs, 1431 SDslu, 1799 SDs, 0 SdLazy, 2007 SolverSat, 241 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 1.0s Time LassoAnalysisResults: nont0 unkn0 SFLI0 SFLT0 conc0 concLT0 SILN0 SILU9 SILI0 SILT0 lasso5 LassoPreprocessingBenchmarks: Lassos: inital288 mio100 ax100 hnf99 lsp89 ukn86 mio100 lsp43 div107 bol100 ite100 ukn100 eq188 hnf85 smp98 dnf150 smp89 tf100 neg99 sie101 LassoTerminationAnalysisBenchmarks: ConstraintsSatisfiability: unsat Degree: 0 Time: 9ms VariablesStem: 14 VariablesLoop: 10 DisjunctsStem: 4 DisjunctsLoop: 1 SupportingInvariants: 2 MotzkinApplications: 12 LassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating RESULT: Ultimate proved your program to be correct! Received shutdown request...