./Ultimate.py --spec ../../sv-benchmarks/c/Termination.prp --file ../../sv-benchmarks/c/termination-memory-alloca/a.06-alloca_true-termination_true-no-overflow.c.i --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 1dbac8bc Calling Ultimate with: java -Dosgi.configuration.area=/tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/config/AutomizerTermination.xml -i ../../sv-benchmarks/c/termination-memory-alloca/a.06-alloca_true-termination_true-no-overflow.c.i -s /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/config/svcomp-Termination-64bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/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 e6c4332f1874752b59e29803328ba77ee4005585 ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................ Execution finished normally Writing output log to file Ultimate.log Result: TRUE --- Real Ultimate output --- This is Ultimate 0.1.23-1dbac8b [2018-11-10 12:23:06,706 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-10 12:23:06,707 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-10 12:23:06,713 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-10 12:23:06,713 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-10 12:23:06,714 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-10 12:23:06,715 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-10 12:23:06,716 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-10 12:23:06,717 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-10 12:23:06,718 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-10 12:23:06,719 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-10 12:23:06,719 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-10 12:23:06,720 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-10 12:23:06,720 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-10 12:23:06,721 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-10 12:23:06,722 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-10 12:23:06,722 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-10 12:23:06,723 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-10 12:23:06,724 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-10 12:23:06,725 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-10 12:23:06,726 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-10 12:23:06,726 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-10 12:23:06,728 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-10 12:23:06,728 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-10 12:23:06,728 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-10 12:23:06,728 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-10 12:23:06,729 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-10 12:23:06,729 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-10 12:23:06,730 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-10 12:23:06,730 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-10 12:23:06,730 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-10 12:23:06,731 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-10 12:23:06,731 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-10 12:23:06,731 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-10 12:23:06,732 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-10 12:23:06,732 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-10 12:23:06,732 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/config/svcomp-Termination-64bit-Automizer_Default.epf [2018-11-10 12:23:06,743 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-10 12:23:06,743 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-10 12:23:06,744 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-10 12:23:06,744 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-10 12:23:06,744 INFO L133 SettingsManager]: * Use SBE=true [2018-11-10 12:23:06,745 INFO L131 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2018-11-10 12:23:06,745 INFO L133 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2018-11-10 12:23:06,745 INFO L133 SettingsManager]: * Use old map elimination=false [2018-11-10 12:23:06,745 INFO L133 SettingsManager]: * Use external solver (rank synthesis)=false [2018-11-10 12:23:06,745 INFO L133 SettingsManager]: * Use only trivial implications for array writes=true [2018-11-10 12:23:06,745 INFO L133 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2018-11-10 12:23:06,745 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-10 12:23:06,746 INFO L133 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2018-11-10 12:23:06,746 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-10 12:23:06,746 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-10 12:23:06,746 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2018-11-10 12:23:06,746 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2018-11-10 12:23:06,746 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2018-11-10 12:23:06,746 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-10 12:23:06,747 INFO L133 SettingsManager]: * Assume nondeterminstic values are in range=false [2018-11-10 12:23:06,747 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2018-11-10 12:23:06,747 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-10 12:23:06,747 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-10 12:23:06,747 INFO L133 SettingsManager]: * To the following directory=/home/matthias/ultimate/dump [2018-11-10 12:23:06,747 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-10 12:23:06,748 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-10 12:23:06,748 INFO L133 SettingsManager]: * Dump automata to the following directory=/home/matthias/ultimate/dump/auto [2018-11-10 12:23:06,748 INFO L131 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2018-11-10 12:23:06,749 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_7effc709-eb94-4755-aec8-19076490b192/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 -> e6c4332f1874752b59e29803328ba77ee4005585 [2018-11-10 12:23:06,772 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-10 12:23:06,782 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-10 12:23:06,784 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-10 12:23:06,785 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-10 12:23:06,786 INFO L276 PluginConnector]: CDTParser initialized [2018-11-10 12:23:06,786 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/../../sv-benchmarks/c/termination-memory-alloca/a.06-alloca_true-termination_true-no-overflow.c.i [2018-11-10 12:23:06,832 INFO L218 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/data/e9278190f/9728c7a5e0c449d6b8d7424bf9bfb479/FLAG63438e761 [2018-11-10 12:23:07,277 INFO L298 CDTParser]: Found 1 translation units. [2018-11-10 12:23:07,278 INFO L158 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/sv-benchmarks/c/termination-memory-alloca/a.06-alloca_true-termination_true-no-overflow.c.i [2018-11-10 12:23:07,286 INFO L346 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/data/e9278190f/9728c7a5e0c449d6b8d7424bf9bfb479/FLAG63438e761 [2018-11-10 12:23:07,299 INFO L354 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/data/e9278190f/9728c7a5e0c449d6b8d7424bf9bfb479 [2018-11-10 12:23:07,302 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-10 12:23:07,303 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-10 12:23:07,304 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-10 12:23:07,304 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-10 12:23:07,308 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-10 12:23:07,308 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,310 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6604a2bf and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07, skipping insertion in model container [2018-11-10 12:23:07,311 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,319 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-10 12:23:07,350 INFO L174 MainTranslator]: Built tables and reachable declarations [2018-11-10 12:23:07,531 INFO L202 PostProcessor]: Analyzing one entry point: main [2018-11-10 12:23:07,540 INFO L189 MainTranslator]: Completed pre-run [2018-11-10 12:23:07,566 INFO L202 PostProcessor]: Analyzing one entry point: main [2018-11-10 12:23:07,597 INFO L193 MainTranslator]: Completed translation [2018-11-10 12:23:07,598 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07 WrapperNode [2018-11-10 12:23:07,598 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-10 12:23:07,599 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-10 12:23:07,599 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-10 12:23:07,599 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-10 12:23:07,644 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,656 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,674 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-10 12:23:07,675 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-10 12:23:07,675 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-10 12:23:07,675 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-10 12:23:07,680 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,680 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,682 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,682 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,685 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,688 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,689 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (1/1) ... [2018-11-10 12:23:07,690 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-10 12:23:07,691 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-10 12:23:07,691 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-10 12:23:07,691 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-10 12:23:07,691 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_7effc709-eb94-4755-aec8-19076490b192/bin-2019/uautomizer/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-10 12:23:07,726 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2018-11-10 12:23:07,726 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2018-11-10 12:23:07,726 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-10 12:23:07,727 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-10 12:23:07,992 INFO L341 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-10 12:23:07,993 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.11 12:23:07 BoogieIcfgContainer [2018-11-10 12:23:07,993 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-10 12:23:07,993 INFO L113 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2018-11-10 12:23:07,993 INFO L271 PluginConnector]: Initializing BuchiAutomizer... [2018-11-10 12:23:07,995 INFO L276 PluginConnector]: BuchiAutomizer initialized [2018-11-10 12:23:07,996 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-10 12:23:07,996 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 10.11 12:23:07" (1/3) ... [2018-11-10 12:23:07,997 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@87a2f94 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.11 12:23:07, skipping insertion in model container [2018-11-10 12:23:07,997 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-10 12:23:07,997 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 12:23:07" (2/3) ... [2018-11-10 12:23:07,997 INFO L205 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@87a2f94 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.11 12:23:07, skipping insertion in model container [2018-11-10 12:23:07,997 INFO L102 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2018-11-10 12:23:07,997 INFO L185 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.11 12:23:07" (3/3) ... [2018-11-10 12:23:07,998 INFO L375 chiAutomizerObserver]: Analyzing ICFG a.06-alloca_true-termination_true-no-overflow.c.i [2018-11-10 12:23:08,038 INFO L135 ementStrategyFactory]: Using default assertion order modulation [2018-11-10 12:23:08,038 INFO L374 BuchiCegarLoop]: Interprodecural is true [2018-11-10 12:23:08,038 INFO L375 BuchiCegarLoop]: Hoare is false [2018-11-10 12:23:08,038 INFO L376 BuchiCegarLoop]: Compute interpolants for ForwardPredicates [2018-11-10 12:23:08,038 INFO L377 BuchiCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-10 12:23:08,038 INFO L378 BuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-10 12:23:08,038 INFO L379 BuchiCegarLoop]: Difference is false [2018-11-10 12:23:08,038 INFO L380 BuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-10 12:23:08,039 INFO L383 BuchiCegarLoop]: ======== Iteration 0==of CEGAR loop == BuchiCegarLoop======== [2018-11-10 12:23:08,047 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 49 states. [2018-11-10 12:23:08,062 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 37 [2018-11-10 12:23:08,062 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:08,062 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:08,067 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,067 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,067 INFO L442 BuchiCegarLoop]: ======== Iteration 1============ [2018-11-10 12:23:08,067 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 49 states. [2018-11-10 12:23:08,070 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 37 [2018-11-10 12:23:08,070 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:08,070 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:08,070 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,071 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,075 INFO L793 eck$LassoCheckResult]: Stem: 26#ULTIMATE.startENTRYtrue assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 10#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res;havoc main_#t~nondet26, main_#t~nondet27, main_#t~nondet28, main_#t~ret29;assume { :begin_inline_test_fun } true;test_fun_#in~x, test_fun_#in~y, test_fun_#in~z := main_#t~nondet26, main_#t~nondet27, main_#t~nondet28;havoc test_fun_#res;havoc test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset, test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset, test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset, test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset, test_fun_#t~mem23, test_fun_#t~mem24, test_fun_#t~mem6, test_fun_#t~mem8, test_fun_#t~mem7, test_fun_#t~short9, test_fun_#t~mem10, test_fun_#t~mem12, test_fun_#t~mem11, test_fun_#t~short13, test_fun_#t~short14, test_fun_#t~mem17, test_fun_#t~mem15, test_fun_#t~mem16, test_fun_#t~short18, test_fun_#t~mem19, test_fun_#t~short20, test_fun_#t~mem21, test_fun_#t~short22, test_fun_#t~mem25, test_fun_~x, test_fun_~y, test_fun_~z, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, test_fun_~c~0.base, test_fun_~c~0.offset;test_fun_~x := test_fun_#in~x;test_fun_~y := test_fun_#in~y;test_fun_~z := test_fun_#in~z;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset := test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset := test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset := test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~c~0.base, test_fun_~c~0.offset := test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset; 24#L553true SUMMARY for call write~int(test_fun_~x, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L553 27#L553-1true SUMMARY for call write~int(test_fun_~y, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L553-1 45#L554true SUMMARY for call write~int(test_fun_~z, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L554 9#L555true SUMMARY for call write~int(0, test_fun_~c~0.base, test_fun_~c~0.offset, 4); srcloc: L555 35#L557-37true [2018-11-10 12:23:08,076 INFO L795 eck$LassoCheckResult]: Loop: 35#L557-37true assume true; 31#L557true SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 32#L557-1true test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 33#L557-2true assume !test_fun_#t~short9; 29#L557-7true test_fun_#t~short14 := test_fun_#t~short9; 30#L557-8true assume test_fun_#t~short14; 14#L557-18true test_fun_#t~short18 := test_fun_#t~short14; 16#L557-19true assume !test_fun_#t~short18; 47#L557-25true test_fun_#t~short20 := test_fun_#t~short18; 48#L557-26true assume !test_fun_#t~short20; 51#L557-30true test_fun_#t~short22 := test_fun_#t~short20; 39#L557-31true assume !test_fun_#t~short22; 46#L557-35true assume !!test_fun_#t~short22;havoc test_fun_#t~mem16;havoc test_fun_#t~mem21;havoc test_fun_#t~mem8;havoc test_fun_#t~short13;havoc test_fun_#t~mem17;havoc test_fun_#t~mem10;havoc test_fun_#t~short14;havoc test_fun_#t~short9;havoc test_fun_#t~mem19;havoc test_fun_#t~short18;havoc test_fun_#t~short20;havoc test_fun_#t~mem12;havoc test_fun_#t~mem15;havoc test_fun_#t~mem11;havoc test_fun_#t~short22;havoc test_fun_#t~mem7;havoc test_fun_#t~mem6; 40#L558true SUMMARY for call test_fun_#t~mem23 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558 42#L558-1true SUMMARY for call write~int(test_fun_#t~mem23 + 1, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558-1 44#L558-2true havoc test_fun_#t~mem23; 17#L559true SUMMARY for call test_fun_#t~mem24 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559 4#L559-1true SUMMARY for call write~int(test_fun_#t~mem24 + 1, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559-1 6#L559-2true havoc test_fun_#t~mem24; 35#L557-37true [2018-11-10 12:23:08,079 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,080 INFO L82 PathProgramCache]: Analyzing trace with hash 889444101, now seen corresponding path program 1 times [2018-11-10 12:23:08,081 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,081 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,116 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,116 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:08,116 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,163 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,185 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,200 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,201 INFO L82 PathProgramCache]: Analyzing trace with hash 1882236905, now seen corresponding path program 1 times [2018-11-10 12:23:08,201 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,201 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,202 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,202 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:08,202 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:08,242 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 12:23:08,243 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 12:23:08,244 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-10 12:23:08,246 INFO L810 eck$LassoCheckResult]: loop already infeasible [2018-11-10 12:23:08,256 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-10 12:23:08,257 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-10 12:23:08,258 INFO L87 Difference]: Start difference. First operand 49 states. Second operand 4 states. [2018-11-10 12:23:08,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 12:23:08,328 INFO L93 Difference]: Finished difference Result 73 states and 84 transitions. [2018-11-10 12:23:08,328 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-10 12:23:08,330 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 73 states and 84 transitions. [2018-11-10 12:23:08,332 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 61 [2018-11-10 12:23:08,336 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 73 states to 67 states and 77 transitions. [2018-11-10 12:23:08,337 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 67 [2018-11-10 12:23:08,337 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 67 [2018-11-10 12:23:08,338 INFO L73 IsDeterministic]: Start isDeterministic. Operand 67 states and 77 transitions. [2018-11-10 12:23:08,338 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2018-11-10 12:23:08,339 INFO L705 BuchiCegarLoop]: Abstraction has 67 states and 77 transitions. [2018-11-10 12:23:08,353 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states and 77 transitions. [2018-11-10 12:23:08,362 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 45. [2018-11-10 12:23:08,363 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 45 states. [2018-11-10 12:23:08,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 51 transitions. [2018-11-10 12:23:08,364 INFO L728 BuchiCegarLoop]: Abstraction has 45 states and 51 transitions. [2018-11-10 12:23:08,364 INFO L608 BuchiCegarLoop]: Abstraction has 45 states and 51 transitions. [2018-11-10 12:23:08,364 INFO L442 BuchiCegarLoop]: ======== Iteration 2============ [2018-11-10 12:23:08,365 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 45 states and 51 transitions. [2018-11-10 12:23:08,365 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 39 [2018-11-10 12:23:08,366 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:08,366 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:08,366 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,366 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,366 INFO L793 eck$LassoCheckResult]: Stem: 172#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 149#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res;havoc main_#t~nondet26, main_#t~nondet27, main_#t~nondet28, main_#t~ret29;assume { :begin_inline_test_fun } true;test_fun_#in~x, test_fun_#in~y, test_fun_#in~z := main_#t~nondet26, main_#t~nondet27, main_#t~nondet28;havoc test_fun_#res;havoc test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset, test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset, test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset, test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset, test_fun_#t~mem23, test_fun_#t~mem24, test_fun_#t~mem6, test_fun_#t~mem8, test_fun_#t~mem7, test_fun_#t~short9, test_fun_#t~mem10, test_fun_#t~mem12, test_fun_#t~mem11, test_fun_#t~short13, test_fun_#t~short14, test_fun_#t~mem17, test_fun_#t~mem15, test_fun_#t~mem16, test_fun_#t~short18, test_fun_#t~mem19, test_fun_#t~short20, test_fun_#t~mem21, test_fun_#t~short22, test_fun_#t~mem25, test_fun_~x, test_fun_~y, test_fun_~z, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, test_fun_~c~0.base, test_fun_~c~0.offset;test_fun_~x := test_fun_#in~x;test_fun_~y := test_fun_#in~y;test_fun_~z := test_fun_#in~z;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset := test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset := test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset := test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~c~0.base, test_fun_~c~0.offset := test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset; 150#L553 SUMMARY for call write~int(test_fun_~x, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L553 170#L553-1 SUMMARY for call write~int(test_fun_~y, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L553-1 168#L554 SUMMARY for call write~int(test_fun_~z, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L554 145#L555 SUMMARY for call write~int(0, test_fun_~c~0.base, test_fun_~c~0.offset, 4); srcloc: L555 139#L557-37 [2018-11-10 12:23:08,367 INFO L795 eck$LassoCheckResult]: Loop: 139#L557-37 assume true; 140#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 141#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 143#L557-2 assume test_fun_#t~short9; 146#L557-3 SUMMARY for call test_fun_#t~mem8 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-3 148#L557-4 SUMMARY for call test_fun_#t~mem7 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-4 171#L557-5 test_fun_#t~short9 := test_fun_#t~mem8 < 2147483647 - test_fun_#t~mem7; 175#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 177#L557-8 assume test_fun_#t~short14; 153#L557-18 test_fun_#t~short18 := test_fun_#t~short14; 154#L557-19 assume !test_fun_#t~short18; 144#L557-25 test_fun_#t~short20 := test_fun_#t~short18; 169#L557-26 assume !test_fun_#t~short20; 174#L557-30 test_fun_#t~short22 := test_fun_#t~short20; 156#L557-31 assume !test_fun_#t~short22; 158#L557-35 assume !!test_fun_#t~short22;havoc test_fun_#t~mem16;havoc test_fun_#t~mem21;havoc test_fun_#t~mem8;havoc test_fun_#t~short13;havoc test_fun_#t~mem17;havoc test_fun_#t~mem10;havoc test_fun_#t~short14;havoc test_fun_#t~short9;havoc test_fun_#t~mem19;havoc test_fun_#t~short18;havoc test_fun_#t~short20;havoc test_fun_#t~mem12;havoc test_fun_#t~mem15;havoc test_fun_#t~mem11;havoc test_fun_#t~short22;havoc test_fun_#t~mem7;havoc test_fun_#t~mem6; 159#L558 SUMMARY for call test_fun_#t~mem23 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558 160#L558-1 SUMMARY for call write~int(test_fun_#t~mem23 + 1, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558-1 164#L558-2 havoc test_fun_#t~mem23; 155#L559 SUMMARY for call test_fun_#t~mem24 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559 136#L559-1 SUMMARY for call write~int(test_fun_#t~mem24 + 1, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559-1 137#L559-2 havoc test_fun_#t~mem24; 139#L557-37 [2018-11-10 12:23:08,367 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,367 INFO L82 PathProgramCache]: Analyzing trace with hash 889444101, now seen corresponding path program 2 times [2018-11-10 12:23:08,367 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,367 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,368 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,368 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:08,369 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,384 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,403 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,403 INFO L82 PathProgramCache]: Analyzing trace with hash -412980920, now seen corresponding path program 1 times [2018-11-10 12:23:08,403 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,404 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,405 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,405 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 12:23:08,405 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:08,432 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 12:23:08,432 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 12:23:08,432 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-10 12:23:08,433 INFO L810 eck$LassoCheckResult]: loop already infeasible [2018-11-10 12:23:08,433 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-10 12:23:08,433 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-10 12:23:08,433 INFO L87 Difference]: Start difference. First operand 45 states and 51 transitions. cyclomatic complexity: 7 Second operand 4 states. [2018-11-10 12:23:08,461 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 12:23:08,461 INFO L93 Difference]: Finished difference Result 60 states and 68 transitions. [2018-11-10 12:23:08,461 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-10 12:23:08,462 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 60 states and 68 transitions. [2018-11-10 12:23:08,463 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 54 [2018-11-10 12:23:08,463 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 60 states to 60 states and 68 transitions. [2018-11-10 12:23:08,463 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 60 [2018-11-10 12:23:08,464 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 60 [2018-11-10 12:23:08,464 INFO L73 IsDeterministic]: Start isDeterministic. Operand 60 states and 68 transitions. [2018-11-10 12:23:08,464 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2018-11-10 12:23:08,464 INFO L705 BuchiCegarLoop]: Abstraction has 60 states and 68 transitions. [2018-11-10 12:23:08,464 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states and 68 transitions. [2018-11-10 12:23:08,465 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 47. [2018-11-10 12:23:08,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 47 states. [2018-11-10 12:23:08,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 53 transitions. [2018-11-10 12:23:08,466 INFO L728 BuchiCegarLoop]: Abstraction has 47 states and 53 transitions. [2018-11-10 12:23:08,466 INFO L608 BuchiCegarLoop]: Abstraction has 47 states and 53 transitions. [2018-11-10 12:23:08,466 INFO L442 BuchiCegarLoop]: ======== Iteration 3============ [2018-11-10 12:23:08,466 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states and 53 transitions. [2018-11-10 12:23:08,467 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 41 [2018-11-10 12:23:08,467 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:08,467 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:08,467 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,468 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,468 INFO L793 eck$LassoCheckResult]: Stem: 287#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 263#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res;havoc main_#t~nondet26, main_#t~nondet27, main_#t~nondet28, main_#t~ret29;assume { :begin_inline_test_fun } true;test_fun_#in~x, test_fun_#in~y, test_fun_#in~z := main_#t~nondet26, main_#t~nondet27, main_#t~nondet28;havoc test_fun_#res;havoc test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset, test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset, test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset, test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset, test_fun_#t~mem23, test_fun_#t~mem24, test_fun_#t~mem6, test_fun_#t~mem8, test_fun_#t~mem7, test_fun_#t~short9, test_fun_#t~mem10, test_fun_#t~mem12, test_fun_#t~mem11, test_fun_#t~short13, test_fun_#t~short14, test_fun_#t~mem17, test_fun_#t~mem15, test_fun_#t~mem16, test_fun_#t~short18, test_fun_#t~mem19, test_fun_#t~short20, test_fun_#t~mem21, test_fun_#t~short22, test_fun_#t~mem25, test_fun_~x, test_fun_~y, test_fun_~z, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, test_fun_~c~0.base, test_fun_~c~0.offset;test_fun_~x := test_fun_#in~x;test_fun_~y := test_fun_#in~y;test_fun_~z := test_fun_#in~z;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset := test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset := test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset := test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~c~0.base, test_fun_~c~0.offset := test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset; 264#L553 SUMMARY for call write~int(test_fun_~x, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L553 285#L553-1 SUMMARY for call write~int(test_fun_~y, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L553-1 283#L554 SUMMARY for call write~int(test_fun_~z, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L554 259#L555 SUMMARY for call write~int(0, test_fun_~c~0.base, test_fun_~c~0.offset, 4); srcloc: L555 255#L557-37 [2018-11-10 12:23:08,468 INFO L795 eck$LassoCheckResult]: Loop: 255#L557-37 assume true; 253#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 254#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 257#L557-2 assume !test_fun_#t~short9; 261#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 293#L557-8 assume !test_fun_#t~short14; 276#L557-10 SUMMARY for call test_fun_#t~mem10 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-10 277#L557-11 test_fun_#t~short13 := test_fun_#t~mem10 < 0; 280#L557-12 assume !test_fun_#t~short13; 266#L557-17 test_fun_#t~short14 := test_fun_#t~short13; 267#L557-18 test_fun_#t~short18 := test_fun_#t~short14; 268#L557-19 assume !test_fun_#t~short18; 258#L557-25 test_fun_#t~short20 := test_fun_#t~short18; 284#L557-26 assume !test_fun_#t~short20; 289#L557-30 test_fun_#t~short22 := test_fun_#t~short20; 271#L557-31 assume !test_fun_#t~short22; 273#L557-35 assume !!test_fun_#t~short22;havoc test_fun_#t~mem16;havoc test_fun_#t~mem21;havoc test_fun_#t~mem8;havoc test_fun_#t~short13;havoc test_fun_#t~mem17;havoc test_fun_#t~mem10;havoc test_fun_#t~short14;havoc test_fun_#t~short9;havoc test_fun_#t~mem19;havoc test_fun_#t~short18;havoc test_fun_#t~short20;havoc test_fun_#t~mem12;havoc test_fun_#t~mem15;havoc test_fun_#t~mem11;havoc test_fun_#t~short22;havoc test_fun_#t~mem7;havoc test_fun_#t~mem6; 274#L558 SUMMARY for call test_fun_#t~mem23 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558 275#L558-1 SUMMARY for call write~int(test_fun_#t~mem23 + 1, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558-1 279#L558-2 havoc test_fun_#t~mem23; 270#L559 SUMMARY for call test_fun_#t~mem24 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559 250#L559-1 SUMMARY for call write~int(test_fun_#t~mem24 + 1, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559-1 251#L559-2 havoc test_fun_#t~mem24; 255#L557-37 [2018-11-10 12:23:08,468 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,468 INFO L82 PathProgramCache]: Analyzing trace with hash 889444101, now seen corresponding path program 3 times [2018-11-10 12:23:08,468 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,468 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,469 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,469 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:08,469 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,481 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,493 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,497 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,497 INFO L82 PathProgramCache]: Analyzing trace with hash -1370476572, now seen corresponding path program 1 times [2018-11-10 12:23:08,497 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,497 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,498 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,498 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 12:23:08,498 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:08,550 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 12:23:08,550 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 12:23:08,550 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-10 12:23:08,550 INFO L810 eck$LassoCheckResult]: loop already infeasible [2018-11-10 12:23:08,551 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-10 12:23:08,551 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2018-11-10 12:23:08,551 INFO L87 Difference]: Start difference. First operand 47 states and 53 transitions. cyclomatic complexity: 7 Second operand 7 states. [2018-11-10 12:23:08,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 12:23:08,708 INFO L93 Difference]: Finished difference Result 71 states and 80 transitions. [2018-11-10 12:23:08,708 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-10 12:23:08,708 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 71 states and 80 transitions. [2018-11-10 12:23:08,709 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 65 [2018-11-10 12:23:08,710 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 71 states to 71 states and 80 transitions. [2018-11-10 12:23:08,710 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 71 [2018-11-10 12:23:08,710 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 71 [2018-11-10 12:23:08,710 INFO L73 IsDeterministic]: Start isDeterministic. Operand 71 states and 80 transitions. [2018-11-10 12:23:08,711 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2018-11-10 12:23:08,711 INFO L705 BuchiCegarLoop]: Abstraction has 71 states and 80 transitions. [2018-11-10 12:23:08,711 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states and 80 transitions. [2018-11-10 12:23:08,713 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 50. [2018-11-10 12:23:08,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-10 12:23:08,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 56 transitions. [2018-11-10 12:23:08,714 INFO L728 BuchiCegarLoop]: Abstraction has 50 states and 56 transitions. [2018-11-10 12:23:08,714 INFO L608 BuchiCegarLoop]: Abstraction has 50 states and 56 transitions. [2018-11-10 12:23:08,714 INFO L442 BuchiCegarLoop]: ======== Iteration 4============ [2018-11-10 12:23:08,714 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 50 states and 56 transitions. [2018-11-10 12:23:08,715 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 44 [2018-11-10 12:23:08,715 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:08,715 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:08,715 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,715 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,716 INFO L793 eck$LassoCheckResult]: Stem: 426#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 401#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res;havoc main_#t~nondet26, main_#t~nondet27, main_#t~nondet28, main_#t~ret29;assume { :begin_inline_test_fun } true;test_fun_#in~x, test_fun_#in~y, test_fun_#in~z := main_#t~nondet26, main_#t~nondet27, main_#t~nondet28;havoc test_fun_#res;havoc test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset, test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset, test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset, test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset, test_fun_#t~mem23, test_fun_#t~mem24, test_fun_#t~mem6, test_fun_#t~mem8, test_fun_#t~mem7, test_fun_#t~short9, test_fun_#t~mem10, test_fun_#t~mem12, test_fun_#t~mem11, test_fun_#t~short13, test_fun_#t~short14, test_fun_#t~mem17, test_fun_#t~mem15, test_fun_#t~mem16, test_fun_#t~short18, test_fun_#t~mem19, test_fun_#t~short20, test_fun_#t~mem21, test_fun_#t~short22, test_fun_#t~mem25, test_fun_~x, test_fun_~y, test_fun_~z, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, test_fun_~c~0.base, test_fun_~c~0.offset;test_fun_~x := test_fun_#in~x;test_fun_~y := test_fun_#in~y;test_fun_~z := test_fun_#in~z;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset := test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset := test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset := test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~c~0.base, test_fun_~c~0.offset := test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset; 402#L553 SUMMARY for call write~int(test_fun_~x, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L553 424#L553-1 SUMMARY for call write~int(test_fun_~y, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L553-1 422#L554 SUMMARY for call write~int(test_fun_~z, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L554 397#L555 SUMMARY for call write~int(0, test_fun_~c~0.base, test_fun_~c~0.offset, 4); srcloc: L555 391#L557-37 [2018-11-10 12:23:08,716 INFO L795 eck$LassoCheckResult]: Loop: 391#L557-37 assume true; 392#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 393#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 395#L557-2 assume test_fun_#t~short9; 398#L557-3 SUMMARY for call test_fun_#t~mem8 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-3 400#L557-4 SUMMARY for call test_fun_#t~mem7 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-4 425#L557-5 test_fun_#t~short9 := test_fun_#t~mem8 < 2147483647 - test_fun_#t~mem7; 429#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 431#L557-8 assume test_fun_#t~short14; 406#L557-18 test_fun_#t~short18 := test_fun_#t~short14; 407#L557-19 assume test_fun_#t~short18; 386#L557-20 SUMMARY for call test_fun_#t~mem17 := read~int(test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L557-20 387#L557-21 SUMMARY for call test_fun_#t~mem15 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-21 390#L557-22 SUMMARY for call test_fun_#t~mem16 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-22 394#L557-23 test_fun_#t~short18 := test_fun_#t~mem17 > test_fun_#t~mem15 + test_fun_#t~mem16; 396#L557-25 test_fun_#t~short20 := test_fun_#t~short18; 423#L557-26 assume !test_fun_#t~short20; 428#L557-30 test_fun_#t~short22 := test_fun_#t~short20; 409#L557-31 assume !test_fun_#t~short22; 411#L557-35 assume !!test_fun_#t~short22;havoc test_fun_#t~mem16;havoc test_fun_#t~mem21;havoc test_fun_#t~mem8;havoc test_fun_#t~short13;havoc test_fun_#t~mem17;havoc test_fun_#t~mem10;havoc test_fun_#t~short14;havoc test_fun_#t~short9;havoc test_fun_#t~mem19;havoc test_fun_#t~short18;havoc test_fun_#t~short20;havoc test_fun_#t~mem12;havoc test_fun_#t~mem15;havoc test_fun_#t~mem11;havoc test_fun_#t~short22;havoc test_fun_#t~mem7;havoc test_fun_#t~mem6; 412#L558 SUMMARY for call test_fun_#t~mem23 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558 413#L558-1 SUMMARY for call write~int(test_fun_#t~mem23 + 1, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558-1 417#L558-2 havoc test_fun_#t~mem23; 408#L559 SUMMARY for call test_fun_#t~mem24 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559 388#L559-1 SUMMARY for call write~int(test_fun_#t~mem24 + 1, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559-1 389#L559-2 havoc test_fun_#t~mem24; 391#L557-37 [2018-11-10 12:23:08,716 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,716 INFO L82 PathProgramCache]: Analyzing trace with hash 889444101, now seen corresponding path program 4 times [2018-11-10 12:23:08,716 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,716 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,717 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,717 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:08,717 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,726 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,739 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,739 INFO L82 PathProgramCache]: Analyzing trace with hash 345464140, now seen corresponding path program 1 times [2018-11-10 12:23:08,739 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,739 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,740 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,740 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 12:23:08,741 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:08,764 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 12:23:08,764 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 12:23:08,764 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-10 12:23:08,765 INFO L810 eck$LassoCheckResult]: loop already infeasible [2018-11-10 12:23:08,765 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-10 12:23:08,765 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-10 12:23:08,765 INFO L87 Difference]: Start difference. First operand 50 states and 56 transitions. cyclomatic complexity: 7 Second operand 3 states. [2018-11-10 12:23:08,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 12:23:08,782 INFO L93 Difference]: Finished difference Result 51 states and 56 transitions. [2018-11-10 12:23:08,783 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-10 12:23:08,783 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 51 states and 56 transitions. [2018-11-10 12:23:08,783 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 44 [2018-11-10 12:23:08,784 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 51 states to 50 states and 55 transitions. [2018-11-10 12:23:08,784 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 50 [2018-11-10 12:23:08,784 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 50 [2018-11-10 12:23:08,784 INFO L73 IsDeterministic]: Start isDeterministic. Operand 50 states and 55 transitions. [2018-11-10 12:23:08,784 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2018-11-10 12:23:08,784 INFO L705 BuchiCegarLoop]: Abstraction has 50 states and 55 transitions. [2018-11-10 12:23:08,784 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states and 55 transitions. [2018-11-10 12:23:08,786 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2018-11-10 12:23:08,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-10 12:23:08,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 55 transitions. [2018-11-10 12:23:08,786 INFO L728 BuchiCegarLoop]: Abstraction has 50 states and 55 transitions. [2018-11-10 12:23:08,786 INFO L608 BuchiCegarLoop]: Abstraction has 50 states and 55 transitions. [2018-11-10 12:23:08,786 INFO L442 BuchiCegarLoop]: ======== Iteration 5============ [2018-11-10 12:23:08,787 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 50 states and 55 transitions. [2018-11-10 12:23:08,787 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 44 [2018-11-10 12:23:08,787 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:08,787 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:08,788 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,788 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,788 INFO L793 eck$LassoCheckResult]: Stem: 532#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 508#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res;havoc main_#t~nondet26, main_#t~nondet27, main_#t~nondet28, main_#t~ret29;assume { :begin_inline_test_fun } true;test_fun_#in~x, test_fun_#in~y, test_fun_#in~z := main_#t~nondet26, main_#t~nondet27, main_#t~nondet28;havoc test_fun_#res;havoc test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset, test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset, test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset, test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset, test_fun_#t~mem23, test_fun_#t~mem24, test_fun_#t~mem6, test_fun_#t~mem8, test_fun_#t~mem7, test_fun_#t~short9, test_fun_#t~mem10, test_fun_#t~mem12, test_fun_#t~mem11, test_fun_#t~short13, test_fun_#t~short14, test_fun_#t~mem17, test_fun_#t~mem15, test_fun_#t~mem16, test_fun_#t~short18, test_fun_#t~mem19, test_fun_#t~short20, test_fun_#t~mem21, test_fun_#t~short22, test_fun_#t~mem25, test_fun_~x, test_fun_~y, test_fun_~z, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, test_fun_~c~0.base, test_fun_~c~0.offset;test_fun_~x := test_fun_#in~x;test_fun_~y := test_fun_#in~y;test_fun_~z := test_fun_#in~z;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset := test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset := test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset := test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~c~0.base, test_fun_~c~0.offset := test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset; 509#L553 SUMMARY for call write~int(test_fun_~x, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L553 530#L553-1 SUMMARY for call write~int(test_fun_~y, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L553-1 528#L554 SUMMARY for call write~int(test_fun_~z, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L554 504#L555 SUMMARY for call write~int(0, test_fun_~c~0.base, test_fun_~c~0.offset, 4); srcloc: L555 500#L557-37 [2018-11-10 12:23:08,788 INFO L795 eck$LassoCheckResult]: Loop: 500#L557-37 assume true; 498#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 499#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 502#L557-2 assume test_fun_#t~short9; 505#L557-3 SUMMARY for call test_fun_#t~mem8 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-3 507#L557-4 SUMMARY for call test_fun_#t~mem7 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-4 531#L557-5 test_fun_#t~short9 := test_fun_#t~mem8 < 2147483647 - test_fun_#t~mem7; 535#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 539#L557-8 assume test_fun_#t~short14; 538#L557-18 test_fun_#t~short18 := test_fun_#t~short14; 514#L557-19 assume test_fun_#t~short18; 493#L557-20 SUMMARY for call test_fun_#t~mem17 := read~int(test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L557-20 494#L557-21 SUMMARY for call test_fun_#t~mem15 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-21 497#L557-22 SUMMARY for call test_fun_#t~mem16 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-22 501#L557-23 test_fun_#t~short18 := test_fun_#t~mem17 > test_fun_#t~mem15 + test_fun_#t~mem16; 503#L557-25 test_fun_#t~short20 := test_fun_#t~short18; 529#L557-26 assume !test_fun_#t~short20; 534#L557-30 test_fun_#t~short22 := test_fun_#t~short20; 516#L557-31 assume test_fun_#t~short22; 517#L557-32 SUMMARY for call test_fun_#t~mem21 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-32 522#L557-33 test_fun_#t~short22 := test_fun_#t~mem21 < 2147483647; 525#L557-35 assume !!test_fun_#t~short22;havoc test_fun_#t~mem16;havoc test_fun_#t~mem21;havoc test_fun_#t~mem8;havoc test_fun_#t~short13;havoc test_fun_#t~mem17;havoc test_fun_#t~mem10;havoc test_fun_#t~short14;havoc test_fun_#t~short9;havoc test_fun_#t~mem19;havoc test_fun_#t~short18;havoc test_fun_#t~short20;havoc test_fun_#t~mem12;havoc test_fun_#t~mem15;havoc test_fun_#t~mem11;havoc test_fun_#t~short22;havoc test_fun_#t~mem7;havoc test_fun_#t~mem6; 518#L558 SUMMARY for call test_fun_#t~mem23 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558 519#L558-1 SUMMARY for call write~int(test_fun_#t~mem23 + 1, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558-1 523#L558-2 havoc test_fun_#t~mem23; 515#L559 SUMMARY for call test_fun_#t~mem24 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559 495#L559-1 SUMMARY for call write~int(test_fun_#t~mem24 + 1, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559-1 496#L559-2 havoc test_fun_#t~mem24; 500#L557-37 [2018-11-10 12:23:08,788 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,789 INFO L82 PathProgramCache]: Analyzing trace with hash 889444101, now seen corresponding path program 5 times [2018-11-10 12:23:08,789 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,789 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,790 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,793 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:08,793 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,817 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,817 INFO L82 PathProgramCache]: Analyzing trace with hash 812236271, now seen corresponding path program 1 times [2018-11-10 12:23:08,817 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,817 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,818 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,818 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 12:23:08,819 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:08,852 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 12:23:08,852 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 12:23:08,852 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-10 12:23:08,853 INFO L810 eck$LassoCheckResult]: loop already infeasible [2018-11-10 12:23:08,853 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-10 12:23:08,853 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-10 12:23:08,853 INFO L87 Difference]: Start difference. First operand 50 states and 55 transitions. cyclomatic complexity: 6 Second operand 4 states. [2018-11-10 12:23:08,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 12:23:08,898 INFO L93 Difference]: Finished difference Result 52 states and 56 transitions. [2018-11-10 12:23:08,898 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-10 12:23:08,898 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 52 states and 56 transitions. [2018-11-10 12:23:08,898 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 44 [2018-11-10 12:23:08,899 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 52 states to 50 states and 54 transitions. [2018-11-10 12:23:08,899 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 50 [2018-11-10 12:23:08,899 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 50 [2018-11-10 12:23:08,899 INFO L73 IsDeterministic]: Start isDeterministic. Operand 50 states and 54 transitions. [2018-11-10 12:23:08,899 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2018-11-10 12:23:08,899 INFO L705 BuchiCegarLoop]: Abstraction has 50 states and 54 transitions. [2018-11-10 12:23:08,899 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states and 54 transitions. [2018-11-10 12:23:08,901 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2018-11-10 12:23:08,901 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-10 12:23:08,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 54 transitions. [2018-11-10 12:23:08,901 INFO L728 BuchiCegarLoop]: Abstraction has 50 states and 54 transitions. [2018-11-10 12:23:08,901 INFO L608 BuchiCegarLoop]: Abstraction has 50 states and 54 transitions. [2018-11-10 12:23:08,901 INFO L442 BuchiCegarLoop]: ======== Iteration 6============ [2018-11-10 12:23:08,901 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 50 states and 54 transitions. [2018-11-10 12:23:08,902 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 44 [2018-11-10 12:23:08,902 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:08,902 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:08,902 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,902 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:08,903 INFO L793 eck$LassoCheckResult]: Stem: 643#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 619#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res;havoc main_#t~nondet26, main_#t~nondet27, main_#t~nondet28, main_#t~ret29;assume { :begin_inline_test_fun } true;test_fun_#in~x, test_fun_#in~y, test_fun_#in~z := main_#t~nondet26, main_#t~nondet27, main_#t~nondet28;havoc test_fun_#res;havoc test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset, test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset, test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset, test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset, test_fun_#t~mem23, test_fun_#t~mem24, test_fun_#t~mem6, test_fun_#t~mem8, test_fun_#t~mem7, test_fun_#t~short9, test_fun_#t~mem10, test_fun_#t~mem12, test_fun_#t~mem11, test_fun_#t~short13, test_fun_#t~short14, test_fun_#t~mem17, test_fun_#t~mem15, test_fun_#t~mem16, test_fun_#t~short18, test_fun_#t~mem19, test_fun_#t~short20, test_fun_#t~mem21, test_fun_#t~short22, test_fun_#t~mem25, test_fun_~x, test_fun_~y, test_fun_~z, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, test_fun_~c~0.base, test_fun_~c~0.offset;test_fun_~x := test_fun_#in~x;test_fun_~y := test_fun_#in~y;test_fun_~z := test_fun_#in~z;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset := test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset := test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset := test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~c~0.base, test_fun_~c~0.offset := test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset; 620#L553 SUMMARY for call write~int(test_fun_~x, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L553 641#L553-1 SUMMARY for call write~int(test_fun_~y, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L553-1 639#L554 SUMMARY for call write~int(test_fun_~z, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L554 615#L555 SUMMARY for call write~int(0, test_fun_~c~0.base, test_fun_~c~0.offset, 4); srcloc: L555 611#L557-37 [2018-11-10 12:23:08,903 INFO L795 eck$LassoCheckResult]: Loop: 611#L557-37 assume true; 609#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 610#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 613#L557-2 assume test_fun_#t~short9; 616#L557-3 SUMMARY for call test_fun_#t~mem8 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-3 618#L557-4 SUMMARY for call test_fun_#t~mem7 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-4 642#L557-5 test_fun_#t~short9 := test_fun_#t~mem8 < 2147483647 - test_fun_#t~mem7; 645#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 650#L557-8 assume test_fun_#t~short14; 649#L557-18 test_fun_#t~short18 := test_fun_#t~short14; 625#L557-19 assume test_fun_#t~short18; 604#L557-20 SUMMARY for call test_fun_#t~mem17 := read~int(test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L557-20 605#L557-21 SUMMARY for call test_fun_#t~mem15 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-21 608#L557-22 SUMMARY for call test_fun_#t~mem16 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-22 612#L557-23 test_fun_#t~short18 := test_fun_#t~mem17 > test_fun_#t~mem15 + test_fun_#t~mem16; 614#L557-25 test_fun_#t~short20 := test_fun_#t~short18; 640#L557-26 assume test_fun_#t~short20; 644#L557-27 SUMMARY for call test_fun_#t~mem19 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-27 646#L557-28 test_fun_#t~short20 := test_fun_#t~mem19 < 2147483647; 647#L557-30 test_fun_#t~short22 := test_fun_#t~short20; 627#L557-31 assume test_fun_#t~short22; 628#L557-32 SUMMARY for call test_fun_#t~mem21 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-32 633#L557-33 test_fun_#t~short22 := test_fun_#t~mem21 < 2147483647; 636#L557-35 assume !!test_fun_#t~short22;havoc test_fun_#t~mem16;havoc test_fun_#t~mem21;havoc test_fun_#t~mem8;havoc test_fun_#t~short13;havoc test_fun_#t~mem17;havoc test_fun_#t~mem10;havoc test_fun_#t~short14;havoc test_fun_#t~short9;havoc test_fun_#t~mem19;havoc test_fun_#t~short18;havoc test_fun_#t~short20;havoc test_fun_#t~mem12;havoc test_fun_#t~mem15;havoc test_fun_#t~mem11;havoc test_fun_#t~short22;havoc test_fun_#t~mem7;havoc test_fun_#t~mem6; 629#L558 SUMMARY for call test_fun_#t~mem23 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558 630#L558-1 SUMMARY for call write~int(test_fun_#t~mem23 + 1, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558-1 634#L558-2 havoc test_fun_#t~mem23; 626#L559 SUMMARY for call test_fun_#t~mem24 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559 606#L559-1 SUMMARY for call write~int(test_fun_#t~mem24 + 1, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559-1 607#L559-2 havoc test_fun_#t~mem24; 611#L557-37 [2018-11-10 12:23:08,903 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,903 INFO L82 PathProgramCache]: Analyzing trace with hash 889444101, now seen corresponding path program 6 times [2018-11-10 12:23:08,903 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,903 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,904 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,904 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:08,905 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,923 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,924 INFO L82 PathProgramCache]: Analyzing trace with hash -800797582, now seen corresponding path program 1 times [2018-11-10 12:23:08,924 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,924 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,925 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,925 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 12:23:08,925 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,946 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:08,947 INFO L82 PathProgramCache]: Analyzing trace with hash 1910080630, now seen corresponding path program 1 times [2018-11-10 12:23:08,947 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:08,947 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:08,948 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,948 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:08,948 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:08,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:08,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:09,293 WARN L179 SmtUtils]: Spent 295.00 ms on a formula simplification. DAG size of input: 127 DAG size of output: 85 [2018-11-10 12:23:09,671 WARN L179 SmtUtils]: Spent 318.00 ms on a formula simplification. DAG size of input: 139 DAG size of output: 121 [2018-11-10 12:23:09,816 WARN L179 SmtUtils]: Spent 143.00 ms on a formula simplification that was a NOOP. DAG size: 113 [2018-11-10 12:23:09,825 INFO L214 LassoAnalysis]: Preferences: [2018-11-10 12:23:09,825 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-10 12:23:09,826 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-10 12:23:09,826 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-10 12:23:09,826 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-10 12:23:09,826 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-10 12:23:09,826 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-10 12:23:09,826 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-10 12:23:09,826 INFO L131 ssoRankerPreferences]: Filename of dumped script: a.06-alloca_true-termination_true-no-overflow.c.i_Iteration6_Lasso [2018-11-10 12:23:09,827 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-10 12:23:09,827 INFO L280 LassoAnalysis]: Starting lasso preprocessing... [2018-11-10 12:23:09,843 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:09,848 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:09,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-11-10 12:23:09,850 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:09,852 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:09,855 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:09,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-11-10 12:23:09,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-11-10 12:23:09,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-11-10 12:23:09,866 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:09,868 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:09,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-11-10 12:23:09,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-11-10 12:23:09,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-11-10 12:23:10,332 WARN L179 SmtUtils]: Spent 271.00 ms on a formula simplification. DAG size of input: 147 DAG size of output: 125 [2018-11-10 12:23:10,440 WARN L179 SmtUtils]: Spent 103.00 ms on a formula simplification. DAG size of input: 91 DAG size of output: 86 [2018-11-10 12:23:10,440 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,445 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,447 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,448 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,448 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,450 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,454 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,455 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,456 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,458 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,459 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,460 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,468 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,469 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,470 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,471 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:10,913 INFO L298 LassoAnalysis]: Preprocessing complete. [2018-11-10 12:23:10,917 INFO L496 LassoAnalysis]: Using template 'affine'. [2018-11-10 12:23:10,918 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,920 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,920 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:10,921 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,921 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,921 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,922 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:10,923 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:10,925 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,925 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,925 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,926 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:10,926 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,926 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,926 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,926 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:10,926 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:10,927 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,927 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,928 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,928 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:10,928 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,928 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,928 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,928 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:10,928 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:10,929 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,929 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,930 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,930 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:10,930 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,930 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,930 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,930 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:10,931 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:10,931 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,932 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,932 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,932 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,932 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,932 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,934 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:10,934 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:10,936 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,937 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,937 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,937 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,938 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,938 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,939 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:10,939 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:10,941 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,941 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,941 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,941 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:10,942 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,942 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,942 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,942 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:10,942 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:10,943 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,943 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,944 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,944 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:10,944 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,944 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,944 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,944 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:10,944 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:10,945 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,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-11-10 12:23:10,946 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,946 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:10,946 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,946 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,946 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,946 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:10,946 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:10,947 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,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-11-10 12:23:10,947 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,948 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:10,948 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,948 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,948 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,948 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:10,948 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:10,949 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,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-11-10 12:23:10,950 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,950 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:10,950 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,950 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,950 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,950 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:10,950 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:10,951 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,951 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,952 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,952 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,952 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,952 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,953 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:10,954 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:10,955 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,956 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,956 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,956 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:10,956 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,956 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,956 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,957 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:10,957 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:10,957 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,958 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,958 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,958 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,959 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,959 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,960 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:10,960 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:10,962 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,963 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,963 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,963 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,963 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,963 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,965 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:10,965 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:10,967 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,967 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,968 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,968 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,968 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,968 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,970 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:10,970 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:10,977 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:10,978 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:10,978 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:10,978 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:10,978 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:10,979 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:10,982 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:10,982 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:11,002 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-10 12:23:11,014 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2018-11-10 12:23:11,014 INFO L444 ModelExtractionUtils]: 37 out of 40 variables were initially zero. Simplification set additionally 0 variables to zero. [2018-11-10 12:23:11,016 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-10 12:23:11,018 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-10 12:23:11,018 INFO L517 LassoAnalysis]: Proved termination. [2018-11-10 12:23:11,019 INFO L519 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int ULTIMATE.start_test_fun_~z_ref~0.base) ULTIMATE.start_test_fun_~z_ref~0.offset)_1) = -2*v_rep(select (select #memory_int ULTIMATE.start_test_fun_~z_ref~0.base) ULTIMATE.start_test_fun_~z_ref~0.offset)_1 + 4294967293 Supporting invariants [] [2018-11-10 12:23:11,122 INFO L297 tatePredicateManager]: 37 out of 37 supporting invariants were superfluous and have been removed [2018-11-10 12:23:11,127 WARN L1239 BoogieBacktranslator]: unknown boogie variable #memory_int [2018-11-10 12:23:11,146 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:11,159 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:11,161 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 12:23:11,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:11,183 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 12:23:11,344 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 12:23:11,359 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 3 case distinctions, treesize of input 52 treesize of output 64 [2018-11-10 12:23:11,385 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 3 case distinctions, treesize of input 50 treesize of output 56 [2018-11-10 12:23:11,390 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 3 xjuncts. [2018-11-10 12:23:11,443 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 12:23:11,444 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 47 treesize of output 46 [2018-11-10 12:23:11,444 INFO L267 ElimStorePlain]: Start of recursive call 4: End of recursive call: and 1 xjuncts. [2018-11-10 12:23:11,475 INFO L267 ElimStorePlain]: Start of recursive call 2: 2 dim-1 vars, End of recursive call: 1 dim-0 vars, and 3 xjuncts. [2018-11-10 12:23:11,529 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-2 vars, End of recursive call: 4 dim-0 vars, and 3 xjuncts. [2018-11-10 12:23:11,530 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 4 variables, input treesize:52, output treesize:86 [2018-11-10 12:23:11,667 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 12:23:11,668 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 50 treesize of output 49 [2018-11-10 12:23:11,670 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 29 [2018-11-10 12:23:11,671 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-10 12:23:11,680 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-10 12:23:11,726 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 12:23:11,727 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 50 treesize of output 47 [2018-11-10 12:23:11,737 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 2 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 40 [2018-11-10 12:23:11,738 INFO L267 ElimStorePlain]: Start of recursive call 5: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-10 12:23:11,745 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-10 12:23:11,770 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 12:23:11,771 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 45 treesize of output 46 [2018-11-10 12:23:11,774 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 24 [2018-11-10 12:23:11,774 INFO L267 ElimStorePlain]: Start of recursive call 7: End of recursive call: and 1 xjuncts. [2018-11-10 12:23:11,780 INFO L267 ElimStorePlain]: Start of recursive call 6: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-10 12:23:11,802 INFO L267 ElimStorePlain]: Start of recursive call 1: 7 dim-0 vars, 3 dim-2 vars, End of recursive call: 6 dim-0 vars, and 3 xjuncts. [2018-11-10 12:23:11,802 INFO L202 ElimStorePlain]: Needed 7 recursive calls to eliminate 10 variables, input treesize:146, output treesize:88 [2018-11-10 12:23:11,881 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 12:23:11,883 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 13 loop predicates [2018-11-10 12:23:11,884 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 50 states and 54 transitions. cyclomatic complexity: 5 Second operand 15 states. [2018-11-10 12:23:12,544 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 50 states and 54 transitions. cyclomatic complexity: 5. Second operand 15 states. Result 211 states and 224 transitions. Complement of second has 31 states. [2018-11-10 12:23:12,545 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 16 states 1 stem states 14 non-accepting loop states 1 accepting loop states [2018-11-10 12:23:12,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 15 states. [2018-11-10 12:23:12,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 90 transitions. [2018-11-10 12:23:12,547 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 16 states and 90 transitions. Stem has 6 letters. Loop has 30 letters. [2018-11-10 12:23:12,549 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 12:23:12,549 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 16 states and 90 transitions. Stem has 36 letters. Loop has 30 letters. [2018-11-10 12:23:12,550 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 12:23:12,550 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 16 states and 90 transitions. Stem has 6 letters. Loop has 60 letters. [2018-11-10 12:23:12,551 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 12:23:12,551 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 211 states and 224 transitions. [2018-11-10 12:23:12,553 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 44 [2018-11-10 12:23:12,554 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 211 states to 141 states and 151 transitions. [2018-11-10 12:23:12,554 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 109 [2018-11-10 12:23:12,555 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 111 [2018-11-10 12:23:12,555 INFO L73 IsDeterministic]: Start isDeterministic. Operand 141 states and 151 transitions. [2018-11-10 12:23:12,555 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 12:23:12,555 INFO L705 BuchiCegarLoop]: Abstraction has 141 states and 151 transitions. [2018-11-10 12:23:12,555 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 141 states and 151 transitions. [2018-11-10 12:23:12,559 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 141 to 90. [2018-11-10 12:23:12,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 90 states. [2018-11-10 12:23:12,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 97 transitions. [2018-11-10 12:23:12,560 INFO L728 BuchiCegarLoop]: Abstraction has 90 states and 97 transitions. [2018-11-10 12:23:12,560 INFO L608 BuchiCegarLoop]: Abstraction has 90 states and 97 transitions. [2018-11-10 12:23:12,560 INFO L442 BuchiCegarLoop]: ======== Iteration 7============ [2018-11-10 12:23:12,560 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 90 states and 97 transitions. [2018-11-10 12:23:12,561 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 44 [2018-11-10 12:23:12,561 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:12,561 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:12,561 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:12,562 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:12,562 INFO L793 eck$LassoCheckResult]: Stem: 1273#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1234#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res;havoc main_#t~nondet26, main_#t~nondet27, main_#t~nondet28, main_#t~ret29;assume { :begin_inline_test_fun } true;test_fun_#in~x, test_fun_#in~y, test_fun_#in~z := main_#t~nondet26, main_#t~nondet27, main_#t~nondet28;havoc test_fun_#res;havoc test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset, test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset, test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset, test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset, test_fun_#t~mem23, test_fun_#t~mem24, test_fun_#t~mem6, test_fun_#t~mem8, test_fun_#t~mem7, test_fun_#t~short9, test_fun_#t~mem10, test_fun_#t~mem12, test_fun_#t~mem11, test_fun_#t~short13, test_fun_#t~short14, test_fun_#t~mem17, test_fun_#t~mem15, test_fun_#t~mem16, test_fun_#t~short18, test_fun_#t~mem19, test_fun_#t~short20, test_fun_#t~mem21, test_fun_#t~short22, test_fun_#t~mem25, test_fun_~x, test_fun_~y, test_fun_~z, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, test_fun_~c~0.base, test_fun_~c~0.offset;test_fun_~x := test_fun_#in~x;test_fun_~y := test_fun_#in~y;test_fun_~z := test_fun_#in~z;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset := test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset := test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset := test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~c~0.base, test_fun_~c~0.offset := test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset; 1235#L553 SUMMARY for call write~int(test_fun_~x, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L553 1270#L553-1 SUMMARY for call write~int(test_fun_~y, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L553-1 1264#L554 SUMMARY for call write~int(test_fun_~z, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L554 1229#L555 SUMMARY for call write~int(0, test_fun_~c~0.base, test_fun_~c~0.offset, 4); srcloc: L555 1230#L557-37 assume true; 1283#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 1220#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 1221#L557-2 assume !test_fun_#t~short9; 1227#L557-7 [2018-11-10 12:23:12,562 INFO L795 eck$LassoCheckResult]: Loop: 1227#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 1281#L557-8 assume !test_fun_#t~short14; 1253#L557-10 SUMMARY for call test_fun_#t~mem10 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-10 1254#L557-11 test_fun_#t~short13 := test_fun_#t~mem10 < 0; 1259#L557-12 assume test_fun_#t~short13; 1262#L557-13 SUMMARY for call test_fun_#t~mem12 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-13 1263#L557-14 SUMMARY for call test_fun_#t~mem11 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-14 1236#L557-15 test_fun_#t~short13 := test_fun_#t~mem12 > -2147483648 - test_fun_#t~mem11; 1237#L557-17 test_fun_#t~short14 := test_fun_#t~short13; 1238#L557-18 test_fun_#t~short18 := test_fun_#t~short14; 1290#L557-19 assume !test_fun_#t~short18; 1223#L557-25 test_fun_#t~short20 := test_fun_#t~short18; 1265#L557-26 assume test_fun_#t~short20; 1271#L557-27 SUMMARY for call test_fun_#t~mem19 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-27 1277#L557-28 test_fun_#t~short20 := test_fun_#t~mem19 < 2147483647; 1279#L557-30 test_fun_#t~short22 := test_fun_#t~short20; 1245#L557-31 assume test_fun_#t~short22; 1246#L557-32 SUMMARY for call test_fun_#t~mem21 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-32 1255#L557-33 test_fun_#t~short22 := test_fun_#t~mem21 < 2147483647; 1260#L557-35 assume !!test_fun_#t~short22;havoc test_fun_#t~mem16;havoc test_fun_#t~mem21;havoc test_fun_#t~mem8;havoc test_fun_#t~short13;havoc test_fun_#t~mem17;havoc test_fun_#t~mem10;havoc test_fun_#t~short14;havoc test_fun_#t~short9;havoc test_fun_#t~mem19;havoc test_fun_#t~short18;havoc test_fun_#t~short20;havoc test_fun_#t~mem12;havoc test_fun_#t~mem15;havoc test_fun_#t~mem11;havoc test_fun_#t~short22;havoc test_fun_#t~mem7;havoc test_fun_#t~mem6; 1249#L558 SUMMARY for call test_fun_#t~mem23 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558 1250#L558-1 SUMMARY for call write~int(test_fun_#t~mem23 + 1, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558-1 1257#L558-2 havoc test_fun_#t~mem23; 1243#L559 SUMMARY for call test_fun_#t~mem24 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559 1205#L559-1 SUMMARY for call write~int(test_fun_#t~mem24 + 1, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559-1 1206#L559-2 havoc test_fun_#t~mem24; 1211#L557-37 assume true; 1214#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 1215#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 1225#L557-2 assume !test_fun_#t~short9; 1227#L557-7 [2018-11-10 12:23:12,562 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:12,562 INFO L82 PathProgramCache]: Analyzing trace with hash -779385105, now seen corresponding path program 1 times [2018-11-10 12:23:12,562 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:12,562 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:12,564 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:12,564 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:12,564 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:12,570 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:12,576 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:12,579 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:12,579 INFO L82 PathProgramCache]: Analyzing trace with hash 419535464, now seen corresponding path program 1 times [2018-11-10 12:23:12,579 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:12,579 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:12,580 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:12,580 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:12,580 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:12,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:12,600 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 12:23:12,600 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 12:23:12,601 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-10 12:23:12,601 INFO L810 eck$LassoCheckResult]: loop already infeasible [2018-11-10 12:23:12,601 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-10 12:23:12,601 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-10 12:23:12,601 INFO L87 Difference]: Start difference. First operand 90 states and 97 transitions. cyclomatic complexity: 9 Second operand 4 states. [2018-11-10 12:23:12,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 12:23:12,614 INFO L93 Difference]: Finished difference Result 92 states and 98 transitions. [2018-11-10 12:23:12,615 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-10 12:23:12,615 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 92 states and 98 transitions. [2018-11-10 12:23:12,616 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 44 [2018-11-10 12:23:12,617 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 92 states to 90 states and 96 transitions. [2018-11-10 12:23:12,617 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 60 [2018-11-10 12:23:12,617 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 60 [2018-11-10 12:23:12,617 INFO L73 IsDeterministic]: Start isDeterministic. Operand 90 states and 96 transitions. [2018-11-10 12:23:12,617 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 12:23:12,617 INFO L705 BuchiCegarLoop]: Abstraction has 90 states and 96 transitions. [2018-11-10 12:23:12,618 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states and 96 transitions. [2018-11-10 12:23:12,620 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 88. [2018-11-10 12:23:12,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 88 states. [2018-11-10 12:23:12,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 94 transitions. [2018-11-10 12:23:12,621 INFO L728 BuchiCegarLoop]: Abstraction has 88 states and 94 transitions. [2018-11-10 12:23:12,621 INFO L608 BuchiCegarLoop]: Abstraction has 88 states and 94 transitions. [2018-11-10 12:23:12,621 INFO L442 BuchiCegarLoop]: ======== Iteration 8============ [2018-11-10 12:23:12,621 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 88 states and 94 transitions. [2018-11-10 12:23:12,622 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 42 [2018-11-10 12:23:12,622 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:12,622 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:12,623 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:12,623 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:12,623 INFO L793 eck$LassoCheckResult]: Stem: 1459#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 1422#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res;havoc main_#t~nondet26, main_#t~nondet27, main_#t~nondet28, main_#t~ret29;assume { :begin_inline_test_fun } true;test_fun_#in~x, test_fun_#in~y, test_fun_#in~z := main_#t~nondet26, main_#t~nondet27, main_#t~nondet28;havoc test_fun_#res;havoc test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset, test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset, test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset, test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset, test_fun_#t~mem23, test_fun_#t~mem24, test_fun_#t~mem6, test_fun_#t~mem8, test_fun_#t~mem7, test_fun_#t~short9, test_fun_#t~mem10, test_fun_#t~mem12, test_fun_#t~mem11, test_fun_#t~short13, test_fun_#t~short14, test_fun_#t~mem17, test_fun_#t~mem15, test_fun_#t~mem16, test_fun_#t~short18, test_fun_#t~mem19, test_fun_#t~short20, test_fun_#t~mem21, test_fun_#t~short22, test_fun_#t~mem25, test_fun_~x, test_fun_~y, test_fun_~z, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, test_fun_~c~0.base, test_fun_~c~0.offset;test_fun_~x := test_fun_#in~x;test_fun_~y := test_fun_#in~y;test_fun_~z := test_fun_#in~z;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset := test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset := test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset := test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~c~0.base, test_fun_~c~0.offset := test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset; 1423#L553 SUMMARY for call write~int(test_fun_~x, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L553 1456#L553-1 SUMMARY for call write~int(test_fun_~y, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L553-1 1453#L554 SUMMARY for call write~int(test_fun_~z, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L554 1415#L555 SUMMARY for call write~int(0, test_fun_~c~0.base, test_fun_~c~0.offset, 4); srcloc: L555 1416#L557-37 assume true; 1472#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 1479#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 1478#L557-2 assume !test_fun_#t~short9; 1418#L557-7 [2018-11-10 12:23:12,623 INFO L795 eck$LassoCheckResult]: Loop: 1418#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 1473#L557-8 assume !test_fun_#t~short14; 1440#L557-10 SUMMARY for call test_fun_#t~mem10 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-10 1441#L557-11 test_fun_#t~short13 := test_fun_#t~mem10 < 0; 1450#L557-12 assume test_fun_#t~short13; 1451#L557-13 SUMMARY for call test_fun_#t~mem12 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-13 1452#L557-14 SUMMARY for call test_fun_#t~mem11 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-14 1424#L557-15 test_fun_#t~short13 := test_fun_#t~mem12 > -2147483648 - test_fun_#t~mem11; 1425#L557-17 test_fun_#t~short14 := test_fun_#t~short13; 1426#L557-18 test_fun_#t~short18 := test_fun_#t~short14; 1427#L557-19 assume test_fun_#t~short18; 1392#L557-20 SUMMARY for call test_fun_#t~mem17 := read~int(test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L557-20 1393#L557-21 SUMMARY for call test_fun_#t~mem15 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-21 1400#L557-22 SUMMARY for call test_fun_#t~mem16 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-22 1409#L557-23 test_fun_#t~short18 := test_fun_#t~mem17 > test_fun_#t~mem15 + test_fun_#t~mem16; 1413#L557-25 test_fun_#t~short20 := test_fun_#t~short18; 1454#L557-26 assume test_fun_#t~short20; 1460#L557-27 SUMMARY for call test_fun_#t~mem19 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-27 1464#L557-28 test_fun_#t~short20 := test_fun_#t~mem19 < 2147483647; 1466#L557-30 test_fun_#t~short22 := test_fun_#t~short20; 1432#L557-31 assume test_fun_#t~short22; 1433#L557-32 SUMMARY for call test_fun_#t~mem21 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-32 1442#L557-33 test_fun_#t~short22 := test_fun_#t~mem21 < 2147483647; 1448#L557-35 assume !!test_fun_#t~short22;havoc test_fun_#t~mem16;havoc test_fun_#t~mem21;havoc test_fun_#t~mem8;havoc test_fun_#t~short13;havoc test_fun_#t~mem17;havoc test_fun_#t~mem10;havoc test_fun_#t~short14;havoc test_fun_#t~short9;havoc test_fun_#t~mem19;havoc test_fun_#t~short18;havoc test_fun_#t~short20;havoc test_fun_#t~mem12;havoc test_fun_#t~mem15;havoc test_fun_#t~mem11;havoc test_fun_#t~short22;havoc test_fun_#t~mem7;havoc test_fun_#t~mem6; 1436#L558 SUMMARY for call test_fun_#t~mem23 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558 1437#L558-1 SUMMARY for call write~int(test_fun_#t~mem23 + 1, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558-1 1444#L558-2 havoc test_fun_#t~mem23; 1430#L559 SUMMARY for call test_fun_#t~mem24 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559 1396#L559-1 SUMMARY for call write~int(test_fun_#t~mem24 + 1, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559-1 1397#L559-2 havoc test_fun_#t~mem24; 1406#L557-37 assume true; 1402#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 1403#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 1411#L557-2 assume !test_fun_#t~short9; 1418#L557-7 [2018-11-10 12:23:12,623 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:12,623 INFO L82 PathProgramCache]: Analyzing trace with hash -779385105, now seen corresponding path program 2 times [2018-11-10 12:23:12,624 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:12,624 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:12,624 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:12,625 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:12,625 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:12,630 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:12,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:12,637 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:12,637 INFO L82 PathProgramCache]: Analyzing trace with hash -1627684244, now seen corresponding path program 1 times [2018-11-10 12:23:12,637 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:12,637 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:12,638 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:12,638 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 12:23:12,638 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:12,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:12,653 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:12,655 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:12,656 INFO L82 PathProgramCache]: Analyzing trace with hash 1604832730, now seen corresponding path program 1 times [2018-11-10 12:23:12,656 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:12,656 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:12,657 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:12,657 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:12,657 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:12,671 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:12,682 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:12,973 WARN L179 SmtUtils]: Spent 284.00 ms on a formula simplification. DAG size of input: 146 DAG size of output: 97 [2018-11-10 12:23:13,308 WARN L179 SmtUtils]: Spent 291.00 ms on a formula simplification. DAG size of input: 150 DAG size of output: 126 [2018-11-10 12:23:13,451 WARN L179 SmtUtils]: Spent 142.00 ms on a formula simplification that was a NOOP. DAG size: 118 [2018-11-10 12:23:13,453 INFO L214 LassoAnalysis]: Preferences: [2018-11-10 12:23:13,453 INFO L124 ssoRankerPreferences]: Compute integeral hull: false [2018-11-10 12:23:13,453 INFO L125 ssoRankerPreferences]: Enable LassoPartitioneer: true [2018-11-10 12:23:13,454 INFO L126 ssoRankerPreferences]: Term annotations enabled: false [2018-11-10 12:23:13,454 INFO L127 ssoRankerPreferences]: Use exernal solver: false [2018-11-10 12:23:13,454 INFO L128 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2018-11-10 12:23:13,454 INFO L129 ssoRankerPreferences]: Dump SMT script to file: false [2018-11-10 12:23:13,454 INFO L130 ssoRankerPreferences]: Path of dumped script: [2018-11-10 12:23:13,454 INFO L131 ssoRankerPreferences]: Filename of dumped script: a.06-alloca_true-termination_true-no-overflow.c.i_Iteration8_Lasso [2018-11-10 12:23:13,454 INFO L132 ssoRankerPreferences]: MapElimAlgo: Frank [2018-11-10 12:23:13,454 INFO L280 LassoAnalysis]: Starting lasso preprocessing... [2018-11-10 12:23:13,458 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,463 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,470 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,474 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,478 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,479 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,481 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,483 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,484 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,486 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,490 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,491 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,493 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,880 WARN L179 SmtUtils]: Spent 267.00 ms on a formula simplification. DAG size of input: 148 DAG size of output: 130 [2018-11-10 12:23:13,995 WARN L179 SmtUtils]: Spent 109.00 ms on a formula simplification. DAG size of input: 95 DAG size of output: 90 [2018-11-10 12:23:13,995 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,996 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,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-11-10 12:23:13,998 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:13,999 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,000 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,001 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,002 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,003 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,007 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,008 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,010 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,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-11-10 12:23:14,012 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,013 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,015 INFO L141 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA XnfConversionTechnique=BOTTOM_UP_WITH_LOCAL_SIMPLIFICATION AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2018-11-10 12:23:14,188 WARN L179 SmtUtils]: Spent 115.00 ms on a formula simplification. DAG size of input: 64 DAG size of output: 61 [2018-11-10 12:23:14,565 INFO L298 LassoAnalysis]: Preprocessing complete. [2018-11-10 12:23:14,565 INFO L496 LassoAnalysis]: Using template 'affine'. [2018-11-10 12:23:14,565 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,566 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,566 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,566 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,566 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,567 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,567 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,567 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,568 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,568 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,569 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,569 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,569 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,569 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,569 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,569 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,569 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,570 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,570 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,570 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,571 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,571 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,571 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,571 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,571 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,571 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,572 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,572 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,572 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,572 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,572 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,572 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,573 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,573 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,573 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,573 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,574 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,574 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,574 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,574 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,574 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,574 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,575 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,575 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,575 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,575 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,576 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,576 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,576 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,576 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,576 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,576 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,576 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,577 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,577 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,577 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,578 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,578 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,578 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,578 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,579 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,580 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,580 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,581 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,581 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,581 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,581 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,581 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,581 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,581 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,582 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,582 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,582 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,583 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,583 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,583 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,583 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,583 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,583 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,584 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,584 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,584 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,584 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,584 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,585 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,585 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,585 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,585 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,585 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,586 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,586 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,586 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,586 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,586 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,587 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,587 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,588 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,588 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,589 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,589 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,589 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,589 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,589 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,589 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,590 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,590 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,590 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,591 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,591 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,591 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,591 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,592 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,592 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,593 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,593 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,594 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,594 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 12:23:14,594 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,594 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,595 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 12:23:14,595 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,598 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,598 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,599 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,599 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 12:23:14,599 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,599 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,600 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 12:23:14,600 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,603 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,604 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,604 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,604 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,604 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,604 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,605 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,605 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,606 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,607 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,607 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,607 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,607 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,607 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,608 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,609 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,614 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,614 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,614 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,614 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,615 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,615 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,615 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,615 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,617 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,617 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,617 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,618 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,618 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,618 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,621 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,621 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,640 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,641 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,641 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,641 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 12:23:14,641 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,641 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,642 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 12:23:14,642 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,645 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,646 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,646 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,646 INFO L205 nArgumentSynthesizer]: 2 stem disjuncts [2018-11-10 12:23:14,646 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,646 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,647 INFO L402 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2018-11-10 12:23:14,647 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,650 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,650 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,650 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,651 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,651 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,651 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,652 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,652 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,657 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,657 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,658 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,658 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,658 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,658 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,658 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,659 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,660 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,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-11-10 12:23:14,661 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,661 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,661 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,661 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,662 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,662 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,667 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,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-11-10 12:23:14,668 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,668 INFO L352 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2018-11-10 12:23:14,668 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,668 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,668 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,668 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2018-11-10 12:23:14,669 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2018-11-10 12:23:14,669 INFO L529 LassoAnalysis]: Proving termination failed for this template and these settings. [2018-11-10 12:23:14,669 INFO L122 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSES Number of strict supporting invariants: 0 Number of non-strict supporting invariants: 1 Consider only non-deceasing supporting invariants: true Simplify termination arguments: true Simplify supporting invariants: trueOverapproximate stem: false [2018-11-10 12:23:14,670 INFO L339 nArgumentSynthesizer]: Template has degree 0. [2018-11-10 12:23:14,670 INFO L205 nArgumentSynthesizer]: 1 stem disjuncts [2018-11-10 12:23:14,670 INFO L206 nArgumentSynthesizer]: 1 loop disjuncts [2018-11-10 12:23:14,670 INFO L207 nArgumentSynthesizer]: 2 template conjuncts. [2018-11-10 12:23:14,672 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2018-11-10 12:23:14,672 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2018-11-10 12:23:14,695 INFO L421 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2018-11-10 12:23:14,710 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2018-11-10 12:23:14,710 INFO L444 ModelExtractionUtils]: 37 out of 43 variables were initially zero. Simplification set additionally 3 variables to zero. [2018-11-10 12:23:14,711 INFO L437 nArgumentSynthesizer]: Simplifying supporting invariants... [2018-11-10 12:23:14,711 INFO L440 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2018-11-10 12:23:14,712 INFO L517 LassoAnalysis]: Proved termination. [2018-11-10 12:23:14,712 INFO L519 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int ULTIMATE.start_test_fun_~z_ref~0.base) ULTIMATE.start_test_fun_~z_ref~0.offset)_2) = -2*v_rep(select (select #memory_int ULTIMATE.start_test_fun_~z_ref~0.base) ULTIMATE.start_test_fun_~z_ref~0.offset)_2 + 4294967293 Supporting invariants [] [2018-11-10 12:23:14,878 INFO L297 tatePredicateManager]: 37 out of 37 supporting invariants were superfluous and have been removed [2018-11-10 12:23:14,879 WARN L1239 BoogieBacktranslator]: unknown boogie variable #memory_int [2018-11-10 12:23:14,888 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:14,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:14,902 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 12:23:14,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:14,914 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-10 12:23:15,009 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 12:23:15,019 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 3 case distinctions, treesize of input 39 treesize of output 55 [2018-11-10 12:23:15,023 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 46 treesize of output 41 [2018-11-10 12:23:15,023 INFO L267 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2018-11-10 12:23:15,044 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 12:23:15,051 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 3 case distinctions, treesize of input 33 treesize of output 51 [2018-11-10 12:23:15,053 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 3 xjuncts. [2018-11-10 12:23:15,080 INFO L267 ElimStorePlain]: Start of recursive call 2: 2 dim-1 vars, End of recursive call: 1 dim-0 vars, and 3 xjuncts. [2018-11-10 12:23:15,099 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 2 xjuncts. [2018-11-10 12:23:15,100 INFO L202 ElimStorePlain]: Needed 4 recursive calls to eliminate 4 variables, input treesize:39, output treesize:40 [2018-11-10 12:23:15,151 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 12:23:15,152 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 39 treesize of output 38 [2018-11-10 12:23:15,154 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 29 [2018-11-10 12:23:15,155 INFO L267 ElimStorePlain]: Start of recursive call 3: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-10 12:23:15,164 INFO L267 ElimStorePlain]: Start of recursive call 2: 1 dim-1 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2018-11-10 12:23:15,193 INFO L700 Elim1Store]: detected not equals via solver [2018-11-10 12:23:15,194 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 40 treesize of output 41 [2018-11-10 12:23:15,197 INFO L477 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 24 [2018-11-10 12:23:15,198 INFO L267 ElimStorePlain]: Start of recursive call 5: End of recursive call: and 1 xjuncts. [2018-11-10 12:23:15,204 INFO L267 ElimStorePlain]: Start of recursive call 4: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2018-11-10 12:23:15,216 INFO L267 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 2 dim-2 vars, End of recursive call: 2 dim-0 vars, and 2 xjuncts. [2018-11-10 12:23:15,216 INFO L202 ElimStorePlain]: Needed 5 recursive calls to eliminate 5 variables, input treesize:80, output treesize:41 [2018-11-10 12:23:15,236 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 12:23:15,237 INFO L152 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 8 loop predicates [2018-11-10 12:23:15,237 INFO L72 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 88 states and 94 transitions. cyclomatic complexity: 8 Second operand 10 states. [2018-11-10 12:23:15,380 INFO L76 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 88 states and 94 transitions. cyclomatic complexity: 8. Second operand 10 states. Result 168 states and 181 transitions. Complement of second has 16 states. [2018-11-10 12:23:15,381 INFO L142 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 9 states 1 stem states 7 non-accepting loop states 1 accepting loop states [2018-11-10 12:23:15,382 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-10 12:23:15,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 87 transitions. [2018-11-10 12:23:15,382 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 87 transitions. Stem has 10 letters. Loop has 34 letters. [2018-11-10 12:23:15,383 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 12:23:15,383 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 87 transitions. Stem has 44 letters. Loop has 34 letters. [2018-11-10 12:23:15,383 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 12:23:15,383 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 87 transitions. Stem has 10 letters. Loop has 68 letters. [2018-11-10 12:23:15,384 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2018-11-10 12:23:15,384 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 168 states and 181 transitions. [2018-11-10 12:23:15,385 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 37 [2018-11-10 12:23:15,386 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 168 states to 83 states and 87 transitions. [2018-11-10 12:23:15,386 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 53 [2018-11-10 12:23:15,390 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 53 [2018-11-10 12:23:15,390 INFO L73 IsDeterministic]: Start isDeterministic. Operand 83 states and 87 transitions. [2018-11-10 12:23:15,390 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 12:23:15,390 INFO L705 BuchiCegarLoop]: Abstraction has 83 states and 87 transitions. [2018-11-10 12:23:15,392 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states and 87 transitions. [2018-11-10 12:23:15,395 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 83. [2018-11-10 12:23:15,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 83 states. [2018-11-10 12:23:15,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 87 transitions. [2018-11-10 12:23:15,397 INFO L728 BuchiCegarLoop]: Abstraction has 83 states and 87 transitions. [2018-11-10 12:23:15,397 INFO L608 BuchiCegarLoop]: Abstraction has 83 states and 87 transitions. [2018-11-10 12:23:15,397 INFO L442 BuchiCegarLoop]: ======== Iteration 9============ [2018-11-10 12:23:15,397 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 83 states and 87 transitions. [2018-11-10 12:23:15,397 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 37 [2018-11-10 12:23:15,397 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:15,398 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:15,398 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:15,398 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:15,398 INFO L793 eck$LassoCheckResult]: Stem: 2039#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 2002#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res;havoc main_#t~nondet26, main_#t~nondet27, main_#t~nondet28, main_#t~ret29;assume { :begin_inline_test_fun } true;test_fun_#in~x, test_fun_#in~y, test_fun_#in~z := main_#t~nondet26, main_#t~nondet27, main_#t~nondet28;havoc test_fun_#res;havoc test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset, test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset, test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset, test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset, test_fun_#t~mem23, test_fun_#t~mem24, test_fun_#t~mem6, test_fun_#t~mem8, test_fun_#t~mem7, test_fun_#t~short9, test_fun_#t~mem10, test_fun_#t~mem12, test_fun_#t~mem11, test_fun_#t~short13, test_fun_#t~short14, test_fun_#t~mem17, test_fun_#t~mem15, test_fun_#t~mem16, test_fun_#t~short18, test_fun_#t~mem19, test_fun_#t~short20, test_fun_#t~mem21, test_fun_#t~short22, test_fun_#t~mem25, test_fun_~x, test_fun_~y, test_fun_~z, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, test_fun_~c~0.base, test_fun_~c~0.offset;test_fun_~x := test_fun_#in~x;test_fun_~y := test_fun_#in~y;test_fun_~z := test_fun_#in~z;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset := test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset := test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset := test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~c~0.base, test_fun_~c~0.offset := test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset; 2003#L553 SUMMARY for call write~int(test_fun_~x, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L553 2036#L553-1 SUMMARY for call write~int(test_fun_~y, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L553-1 2031#L554 SUMMARY for call write~int(test_fun_~z, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L554 1998#L555 SUMMARY for call write~int(0, test_fun_~c~0.base, test_fun_~c~0.offset, 4); srcloc: L555 1999#L557-37 assume true; 1986#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 1987#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 1992#L557-2 assume test_fun_#t~short9; 1996#L557-3 SUMMARY for call test_fun_#t~mem8 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-3 2000#L557-4 SUMMARY for call test_fun_#t~mem7 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-4 2034#L557-5 test_fun_#t~short9 := test_fun_#t~mem8 < 2147483647 - test_fun_#t~mem7; 2040#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 2046#L557-8 assume !test_fun_#t~short14; 2020#L557-10 [2018-11-10 12:23:15,399 INFO L795 eck$LassoCheckResult]: Loop: 2020#L557-10 SUMMARY for call test_fun_#t~mem10 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-10 2021#L557-11 test_fun_#t~short13 := test_fun_#t~mem10 < 0; 2026#L557-12 assume !test_fun_#t~short13; 2005#L557-17 test_fun_#t~short14 := test_fun_#t~short13; 2006#L557-18 test_fun_#t~short18 := test_fun_#t~short14; 2007#L557-19 assume test_fun_#t~short18; 1973#L557-20 SUMMARY for call test_fun_#t~mem17 := read~int(test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L557-20 1974#L557-21 SUMMARY for call test_fun_#t~mem15 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-21 1981#L557-22 SUMMARY for call test_fun_#t~mem16 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-22 1990#L557-23 test_fun_#t~short18 := test_fun_#t~mem17 > test_fun_#t~mem15 + test_fun_#t~mem16; 1994#L557-25 test_fun_#t~short20 := test_fun_#t~short18; 2032#L557-26 assume test_fun_#t~short20; 2037#L557-27 SUMMARY for call test_fun_#t~mem19 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-27 2042#L557-28 test_fun_#t~short20 := test_fun_#t~mem19 < 2147483647; 2044#L557-30 test_fun_#t~short22 := test_fun_#t~short20; 2012#L557-31 assume test_fun_#t~short22; 2013#L557-32 SUMMARY for call test_fun_#t~mem21 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-32 2022#L557-33 test_fun_#t~short22 := test_fun_#t~mem21 < 2147483647; 2027#L557-35 assume !!test_fun_#t~short22;havoc test_fun_#t~mem16;havoc test_fun_#t~mem21;havoc test_fun_#t~mem8;havoc test_fun_#t~short13;havoc test_fun_#t~mem17;havoc test_fun_#t~mem10;havoc test_fun_#t~short14;havoc test_fun_#t~short9;havoc test_fun_#t~mem19;havoc test_fun_#t~short18;havoc test_fun_#t~short20;havoc test_fun_#t~mem12;havoc test_fun_#t~mem15;havoc test_fun_#t~mem11;havoc test_fun_#t~short22;havoc test_fun_#t~mem7;havoc test_fun_#t~mem6; 2016#L558 SUMMARY for call test_fun_#t~mem23 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558 2017#L558-1 SUMMARY for call write~int(test_fun_#t~mem23 + 1, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558-1 2024#L558-2 havoc test_fun_#t~mem23; 2010#L559 SUMMARY for call test_fun_#t~mem24 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559 1977#L559-1 SUMMARY for call write~int(test_fun_#t~mem24 + 1, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559-1 1978#L559-2 havoc test_fun_#t~mem24; 1983#L557-37 assume true; 2055#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 2054#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 2053#L557-2 assume test_fun_#t~short9; 2052#L557-3 SUMMARY for call test_fun_#t~mem8 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-3 2051#L557-4 SUMMARY for call test_fun_#t~mem7 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-4 2050#L557-5 test_fun_#t~short9 := test_fun_#t~mem8 < 2147483647 - test_fun_#t~mem7; 2049#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 2048#L557-8 assume !test_fun_#t~short14; 2020#L557-10 [2018-11-10 12:23:15,399 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:15,399 INFO L82 PathProgramCache]: Analyzing trace with hash -1493285939, now seen corresponding path program 1 times [2018-11-10 12:23:15,399 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:15,399 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:15,400 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:15,400 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:15,400 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:15,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:15,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:15,414 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:15,414 INFO L82 PathProgramCache]: Analyzing trace with hash -1234494571, now seen corresponding path program 1 times [2018-11-10 12:23:15,414 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:15,414 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:15,415 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:15,415 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:15,415 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:15,417 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:15,455 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 12:23:15,455 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 12:23:15,455 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-10 12:23:15,455 INFO L810 eck$LassoCheckResult]: loop already infeasible [2018-11-10 12:23:15,456 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-10 12:23:15,456 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-10 12:23:15,456 INFO L87 Difference]: Start difference. First operand 83 states and 87 transitions. cyclomatic complexity: 6 Second operand 5 states. [2018-11-10 12:23:15,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 12:23:15,481 INFO L93 Difference]: Finished difference Result 86 states and 89 transitions. [2018-11-10 12:23:15,482 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-10 12:23:15,482 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 86 states and 89 transitions. [2018-11-10 12:23:15,483 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 37 [2018-11-10 12:23:15,484 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 86 states to 83 states and 86 transitions. [2018-11-10 12:23:15,484 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 53 [2018-11-10 12:23:15,484 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 53 [2018-11-10 12:23:15,484 INFO L73 IsDeterministic]: Start isDeterministic. Operand 83 states and 86 transitions. [2018-11-10 12:23:15,484 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2018-11-10 12:23:15,484 INFO L705 BuchiCegarLoop]: Abstraction has 83 states and 86 transitions. [2018-11-10 12:23:15,484 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states and 86 transitions. [2018-11-10 12:23:15,488 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 83. [2018-11-10 12:23:15,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 83 states. [2018-11-10 12:23:15,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 86 transitions. [2018-11-10 12:23:15,489 INFO L728 BuchiCegarLoop]: Abstraction has 83 states and 86 transitions. [2018-11-10 12:23:15,489 INFO L608 BuchiCegarLoop]: Abstraction has 83 states and 86 transitions. [2018-11-10 12:23:15,489 INFO L442 BuchiCegarLoop]: ======== Iteration 10============ [2018-11-10 12:23:15,489 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 83 states and 86 transitions. [2018-11-10 12:23:15,490 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 37 [2018-11-10 12:23:15,490 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2018-11-10 12:23:15,490 INFO L119 BuchiIsEmpty]: Starting construction of run [2018-11-10 12:23:15,491 INFO L866 BuchiCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:15,491 INFO L867 BuchiCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-10 12:23:15,491 INFO L793 eck$LassoCheckResult]: Stem: 2218#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0]; 2183#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res;havoc main_#t~nondet26, main_#t~nondet27, main_#t~nondet28, main_#t~ret29;assume { :begin_inline_test_fun } true;test_fun_#in~x, test_fun_#in~y, test_fun_#in~z := main_#t~nondet26, main_#t~nondet27, main_#t~nondet28;havoc test_fun_#res;havoc test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset, test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset, test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset, test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset, test_fun_#t~mem23, test_fun_#t~mem24, test_fun_#t~mem6, test_fun_#t~mem8, test_fun_#t~mem7, test_fun_#t~short9, test_fun_#t~mem10, test_fun_#t~mem12, test_fun_#t~mem11, test_fun_#t~short13, test_fun_#t~short14, test_fun_#t~mem17, test_fun_#t~mem15, test_fun_#t~mem16, test_fun_#t~short18, test_fun_#t~mem19, test_fun_#t~short20, test_fun_#t~mem21, test_fun_#t~short22, test_fun_#t~mem25, test_fun_~x, test_fun_~y, test_fun_~z, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, test_fun_~c~0.base, test_fun_~c~0.offset;test_fun_~x := test_fun_#in~x;test_fun_~y := test_fun_#in~y;test_fun_~z := test_fun_#in~z;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset := test_fun_#t~malloc2.base, test_fun_#t~malloc2.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset := test_fun_#t~malloc3.base, test_fun_#t~malloc3.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset := test_fun_#t~malloc4.base, test_fun_#t~malloc4.offset;#Ultimate.alloc_old_#length, #Ultimate.alloc_old_#valid := #length, #valid;assume { :begin_inline_#Ultimate.alloc } true;#Ultimate.alloc_~size := 4;havoc #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;havoc #valid, #length;assume #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base] == 0;assume #valid == #Ultimate.alloc_old_#valid[#Ultimate.alloc_#res.base := 1];assume #Ultimate.alloc_#res.offset == 0;assume #Ultimate.alloc_#res.base != 0;assume #length == #Ultimate.alloc_old_#length[#Ultimate.alloc_#res.base := #Ultimate.alloc_~size];test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset := #Ultimate.alloc_#res.base, #Ultimate.alloc_#res.offset;assume { :end_inline_#Ultimate.alloc } true;test_fun_~c~0.base, test_fun_~c~0.offset := test_fun_#t~malloc5.base, test_fun_#t~malloc5.offset; 2184#L553 SUMMARY for call write~int(test_fun_~x, test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L553 2215#L553-1 SUMMARY for call write~int(test_fun_~y, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L553-1 2212#L554 SUMMARY for call write~int(test_fun_~z, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L554 2177#L555 SUMMARY for call write~int(0, test_fun_~c~0.base, test_fun_~c~0.offset, 4); srcloc: L555 2178#L557-37 assume true; 2164#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 2165#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 2173#L557-2 assume test_fun_#t~short9; 2179#L557-3 SUMMARY for call test_fun_#t~mem8 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-3 2181#L557-4 SUMMARY for call test_fun_#t~mem7 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-4 2216#L557-5 test_fun_#t~short9 := test_fun_#t~mem8 < 2147483647 - test_fun_#t~mem7; 2221#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 2227#L557-8 assume !test_fun_#t~short14; 2201#L557-10 [2018-11-10 12:23:15,491 INFO L795 eck$LassoCheckResult]: Loop: 2201#L557-10 SUMMARY for call test_fun_#t~mem10 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-10 2202#L557-11 test_fun_#t~short13 := test_fun_#t~mem10 < 0; 2207#L557-12 assume test_fun_#t~short13; 2210#L557-13 SUMMARY for call test_fun_#t~mem12 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-13 2211#L557-14 SUMMARY for call test_fun_#t~mem11 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-14 2185#L557-15 test_fun_#t~short13 := test_fun_#t~mem12 > -2147483648 - test_fun_#t~mem11; 2186#L557-17 test_fun_#t~short14 := test_fun_#t~short13; 2187#L557-18 test_fun_#t~short18 := test_fun_#t~short14; 2188#L557-19 assume test_fun_#t~short18; 2154#L557-20 SUMMARY for call test_fun_#t~mem17 := read~int(test_fun_~x_ref~0.base, test_fun_~x_ref~0.offset, 4); srcloc: L557-20 2155#L557-21 SUMMARY for call test_fun_#t~mem15 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-21 2162#L557-22 SUMMARY for call test_fun_#t~mem16 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-22 2171#L557-23 test_fun_#t~short18 := test_fun_#t~mem17 > test_fun_#t~mem15 + test_fun_#t~mem16; 2175#L557-25 test_fun_#t~short20 := test_fun_#t~short18; 2213#L557-26 assume test_fun_#t~short20; 2219#L557-27 SUMMARY for call test_fun_#t~mem19 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-27 2223#L557-28 test_fun_#t~short20 := test_fun_#t~mem19 < 2147483647; 2225#L557-30 test_fun_#t~short22 := test_fun_#t~short20; 2193#L557-31 assume test_fun_#t~short22; 2194#L557-32 SUMMARY for call test_fun_#t~mem21 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-32 2203#L557-33 test_fun_#t~short22 := test_fun_#t~mem21 < 2147483647; 2208#L557-35 assume !!test_fun_#t~short22;havoc test_fun_#t~mem16;havoc test_fun_#t~mem21;havoc test_fun_#t~mem8;havoc test_fun_#t~short13;havoc test_fun_#t~mem17;havoc test_fun_#t~mem10;havoc test_fun_#t~short14;havoc test_fun_#t~short9;havoc test_fun_#t~mem19;havoc test_fun_#t~short18;havoc test_fun_#t~short20;havoc test_fun_#t~mem12;havoc test_fun_#t~mem15;havoc test_fun_#t~mem11;havoc test_fun_#t~short22;havoc test_fun_#t~mem7;havoc test_fun_#t~mem6; 2197#L558 SUMMARY for call test_fun_#t~mem23 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558 2198#L558-1 SUMMARY for call write~int(test_fun_#t~mem23 + 1, test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L558-1 2205#L558-2 havoc test_fun_#t~mem23; 2191#L559 SUMMARY for call test_fun_#t~mem24 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559 2158#L559-1 SUMMARY for call write~int(test_fun_#t~mem24 + 1, test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L559-1 2159#L559-2 havoc test_fun_#t~mem24; 2168#L557-37 assume true; 2236#L557 SUMMARY for call test_fun_#t~mem6 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557 2235#L557-1 test_fun_#t~short9 := test_fun_#t~mem6 >= 0; 2234#L557-2 assume test_fun_#t~short9; 2233#L557-3 SUMMARY for call test_fun_#t~mem8 := read~int(test_fun_~z_ref~0.base, test_fun_~z_ref~0.offset, 4); srcloc: L557-3 2232#L557-4 SUMMARY for call test_fun_#t~mem7 := read~int(test_fun_~y_ref~0.base, test_fun_~y_ref~0.offset, 4); srcloc: L557-4 2231#L557-5 test_fun_#t~short9 := test_fun_#t~mem8 < 2147483647 - test_fun_#t~mem7; 2230#L557-7 test_fun_#t~short14 := test_fun_#t~short9; 2229#L557-8 assume !test_fun_#t~short14; 2201#L557-10 [2018-11-10 12:23:15,491 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:15,491 INFO L82 PathProgramCache]: Analyzing trace with hash -1493285939, now seen corresponding path program 2 times [2018-11-10 12:23:15,491 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:15,491 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:15,492 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:15,492 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:15,492 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:15,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:15,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:15,509 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:15,509 INFO L82 PathProgramCache]: Analyzing trace with hash 1656111605, now seen corresponding path program 1 times [2018-11-10 12:23:15,509 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:15,510 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:15,510 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:15,510 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-10 12:23:15,510 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:15,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:15,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-10 12:23:15,523 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-10 12:23:15,523 INFO L82 PathProgramCache]: Analyzing trace with hash 256552361, now seen corresponding path program 1 times [2018-11-10 12:23:15,523 INFO L225 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-10 12:23:15,523 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-10 12:23:15,524 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:15,524 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-10 12:23:15,524 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-10 12:23:15,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-10 12:23:15,571 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 9 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-10 12:23:15,572 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-10 12:23:15,572 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-10 12:23:15,805 WARN L179 SmtUtils]: Spent 231.00 ms on a formula simplification. DAG size of input: 158 DAG size of output: 101 [2018-11-10 12:23:15,870 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-10 12:23:15,871 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2018-11-10 12:23:15,871 INFO L87 Difference]: Start difference. First operand 83 states and 86 transitions. cyclomatic complexity: 5 Second operand 7 states. [2018-11-10 12:23:15,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-10 12:23:15,917 INFO L93 Difference]: Finished difference Result 49 states and 50 transitions. [2018-11-10 12:23:15,917 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-10 12:23:15,917 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 49 states and 50 transitions. [2018-11-10 12:23:15,917 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2018-11-10 12:23:15,918 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 49 states to 0 states and 0 transitions. [2018-11-10 12:23:15,918 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2018-11-10 12:23:15,918 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2018-11-10 12:23:15,918 INFO L73 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2018-11-10 12:23:15,918 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2018-11-10 12:23:15,918 INFO L705 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-10 12:23:15,918 INFO L728 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-10 12:23:15,918 INFO L608 BuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-10 12:23:15,918 INFO L442 BuchiCegarLoop]: ======== Iteration 11============ [2018-11-10 12:23:15,918 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2018-11-10 12:23:15,918 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2018-11-10 12:23:15,918 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2018-11-10 12:23:15,924 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 10.11 12:23:15 BoogieIcfgContainer [2018-11-10 12:23:15,924 INFO L132 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2018-11-10 12:23:15,925 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-10 12:23:15,925 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-10 12:23:15,925 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-10 12:23:15,925 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.11 12:23:07" (3/4) ... [2018-11-10 12:23:15,928 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-10 12:23:15,928 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-10 12:23:15,929 INFO L168 Benchmark]: Toolchain (without parser) took 8626.02 ms. Allocated memory was 1.0 GB in the beginning and 1.3 GB in the end (delta: 286.8 MB). Free memory was 956.6 MB in the beginning and 1.3 GB in the end (delta: -300.6 MB). There was no memory consumed. Max. memory is 11.5 GB. [2018-11-10 12:23:15,929 INFO L168 Benchmark]: CDTParser took 0.15 ms. Allocated memory is still 1.0 GB. Free memory is still 985.5 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-10 12:23:15,929 INFO L168 Benchmark]: CACSL2BoogieTranslator took 294.16 ms. Allocated memory is still 1.0 GB. Free memory was 956.6 MB in the beginning and 935.1 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. [2018-11-10 12:23:15,930 INFO L168 Benchmark]: Boogie Procedure Inliner took 75.66 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 132.1 MB). Free memory was 935.1 MB in the beginning and 1.1 GB in the end (delta: -193.8 MB). Peak memory consumption was 15.7 MB. Max. memory is 11.5 GB. [2018-11-10 12:23:15,930 INFO L168 Benchmark]: Boogie Preprocessor took 15.72 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. [2018-11-10 12:23:15,931 INFO L168 Benchmark]: RCFGBuilder took 302.29 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 30.4 MB). Peak memory consumption was 30.4 MB. Max. memory is 11.5 GB. [2018-11-10 12:23:15,931 INFO L168 Benchmark]: BuchiAutomizer took 7931.19 ms. Allocated memory was 1.2 GB in the beginning and 1.3 GB in the end (delta: 154.7 MB). Free memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: -161.3 MB). There was no memory consumed. Max. memory is 11.5 GB. [2018-11-10 12:23:15,931 INFO L168 Benchmark]: Witness Printer took 3.51 ms. Allocated memory is still 1.3 GB. Free memory is still 1.3 GB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-10 12:23:15,934 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 985.5 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 294.16 ms. Allocated memory is still 1.0 GB. Free memory was 956.6 MB in the beginning and 935.1 MB in the end (delta: 21.5 MB). Peak memory consumption was 21.5 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 75.66 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 132.1 MB). Free memory was 935.1 MB in the beginning and 1.1 GB in the end (delta: -193.8 MB). Peak memory consumption was 15.7 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 15.72 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 2.7 MB). Peak memory consumption was 2.7 MB. Max. memory is 11.5 GB. * RCFGBuilder took 302.29 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 30.4 MB). Peak memory consumption was 30.4 MB. Max. memory is 11.5 GB. * BuchiAutomizer took 7931.19 ms. Allocated memory was 1.2 GB in the beginning and 1.3 GB in the end (delta: 154.7 MB). Free memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: -161.3 MB). There was no memory consumed. Max. memory is 11.5 GB. * Witness Printer took 3.51 ms. Allocated memory is still 1.3 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 #memory_int - GenericResult: Unfinished Backtranslation unknown boogie variable #memory_int * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Constructed decomposition of program Your program was decomposed into 10 terminating modules (8 trivial, 2 deterministic, 0 nondeterministic). One deterministic module has affine ranking function -2 * unknown-#memory_int-unknown[z_ref][z_ref] + 4294967293 and consists of 16 locations. One deterministic module has affine ranking function -2 * unknown-#memory_int-unknown[z_ref][z_ref] + 4294967293 and consists of 9 locations. 8 modules have a trivial ranking function, the largest among these consists of 7 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 7.8s and 11 iterations. TraceHistogramMax:1. Analysis of lassos took 5.3s. Construction of modules took 0.4s. Büchi inclusion checks took 1.9s. Highest rank in rank-based complementation 3. Minimization of det autom 6. Minimization of nondet autom 4. Automata minimization 0.0s AutomataMinimizationTime, 9 MinimizatonAttempts, 109 StatesRemovedByMinimization, 5 NontrivialMinimizations. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had 90 states and ocurred in iteration 6. Nontrivial modules had stage [2, 0, 0, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 489 SDtfs, 640 SDslu, 910 SDs, 0 SdLazy, 513 SolverSat, 30 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.4s Time LassoAnalysisResults: nont0 unkn0 SFLI7 SFLT0 conc1 concLT0 SILN0 SILU0 SILI0 SILT0 lasso2 LassoPreprocessingBenchmarks: Lassos: inital456 mio100 ax103 hnf99 lsp93 ukn67 mio100 lsp36 div100 bol100 ite100 ukn100 eq203 hnf87 smp97 dnf100 smp100 tf100 neg100 sie100 LassoTerminationAnalysisBenchmarks: ConstraintsSatisfiability: unsat Degree: 0 Time: 4ms VariablesStem: 2 VariablesLoop: 2 DisjunctsStem: 2 DisjunctsLoop: 1 SupportingInvariants: 2 MotzkinApplications: 8 LassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating RESULT: Ultimate proved your program to be correct! Received shutdown request...