./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/termination-numeric/Binomial.c --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version c00e63dc Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i ../sv-benchmarks/c/termination-numeric/Binomial.c -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --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 c204b56aba09d3ce87e17edffdff1d33aa0b4dc87a1e1140339548dffa982588 --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-06 19:00:26,799 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-06 19:00:26,838 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-Automizer_Default.epf [2025-02-06 19:00:26,841 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-06 19:00:26,841 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-06 19:00:26,841 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder.Remove goto edges from RCFG [2025-02-06 19:00:26,857 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-06 19:00:26,857 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-06 19:00:26,858 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-06 19:00:26,858 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-06 19:00:26,858 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-06 19:00:26,858 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-06 19:00:26,858 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-06 19:00:26,858 INFO L153 SettingsManager]: * Use SBE=true [2025-02-06 19:00:26,858 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2025-02-06 19:00:26,858 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2025-02-06 19:00:26,858 INFO L153 SettingsManager]: * Use old map elimination=false [2025-02-06 19:00:26,858 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2025-02-06 19:00:26,858 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2025-02-06 19:00:26,858 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2025-02-06 19:00:26,858 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-06 19:00:26,859 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-06 19:00:26,859 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-06 19:00:26,859 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-06 19:00:26,859 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2025-02-06 19:00:26,859 INFO L153 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 -> /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness 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 -> c204b56aba09d3ce87e17edffdff1d33aa0b4dc87a1e1140339548dffa982588 [2025-02-06 19:00:27,070 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-06 19:00:27,075 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-06 19:00:27,077 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-06 19:00:27,078 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-06 19:00:27,078 INFO L274 PluginConnector]: CDTParser initialized [2025-02-06 19:00:27,079 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/termination-numeric/Binomial.c [2025-02-06 19:00:28,294 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/28a459f35/4bcabbb7e05646beabb6b7bee107e4f9/FLAGdd11c8d6f [2025-02-06 19:00:28,556 INFO L384 CDTParser]: Found 1 translation units. [2025-02-06 19:00:28,557 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/termination-numeric/Binomial.c [2025-02-06 19:00:28,563 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/28a459f35/4bcabbb7e05646beabb6b7bee107e4f9/FLAGdd11c8d6f [2025-02-06 19:00:28,886 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/28a459f35/4bcabbb7e05646beabb6b7bee107e4f9 [2025-02-06 19:00:28,888 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-06 19:00:28,890 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-06 19:00:28,892 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-06 19:00:28,894 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-06 19:00:28,898 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-06 19:00:28,898 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 07:00:28" (1/1) ... [2025-02-06 19:00:28,899 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3f7d619f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:28, skipping insertion in model container [2025-02-06 19:00:28,899 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 06.02 07:00:28" (1/1) ... [2025-02-06 19:00:28,911 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-06 19:00:29,005 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 19:00:29,009 INFO L200 MainTranslator]: Completed pre-run [2025-02-06 19:00:29,018 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-06 19:00:29,029 INFO L204 MainTranslator]: Completed translation [2025-02-06 19:00:29,030 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29 WrapperNode [2025-02-06 19:00:29,030 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-06 19:00:29,031 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-06 19:00:29,031 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-06 19:00:29,031 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-06 19:00:29,036 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,038 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,050 INFO L138 Inliner]: procedures = 6, calls = 8, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 58 [2025-02-06 19:00:29,051 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-06 19:00:29,051 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-06 19:00:29,052 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-06 19:00:29,052 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-06 19:00:29,056 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,057 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,058 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,062 INFO L175 MemorySlicer]: No memory access in input program. [2025-02-06 19:00:29,063 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,063 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,065 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,065 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,068 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,069 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,070 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-06 19:00:29,070 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-06 19:00:29,070 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-06 19:00:29,070 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-06 19:00:29,071 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (1/1) ... [2025-02-06 19:00:29,077 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:29,100 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:29,102 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2025-02-06 19:00:29,121 INFO L130 BoogieDeclarations]: Found specification of procedure fact [2025-02-06 19:00:29,122 INFO L138 BoogieDeclarations]: Found implementation of procedure fact [2025-02-06 19:00:29,122 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-06 19:00:29,122 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-06 19:00:29,163 INFO L257 CfgBuilder]: Building ICFG [2025-02-06 19:00:29,165 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-06 19:00:29,259 INFO L1309 $ProcedureCfgBuilder]: dead code at ProgramPoint L30: havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; [2025-02-06 19:00:29,259 INFO L1309 $ProcedureCfgBuilder]: dead code at ProgramPoint L30-6: havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1; [2025-02-06 19:00:29,267 INFO L? ?]: Removed 16 outVars from TransFormulas that were not future-live. [2025-02-06 19:00:29,268 INFO L308 CfgBuilder]: Performing block encoding [2025-02-06 19:00:29,276 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-06 19:00:29,277 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-06 19:00:29,277 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 07:00:29 BoogieIcfgContainer [2025-02-06 19:00:29,277 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-06 19:00:29,278 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2025-02-06 19:00:29,278 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2025-02-06 19:00:29,283 INFO L274 PluginConnector]: BuchiAutomizer initialized [2025-02-06 19:00:29,283 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-02-06 19:00:29,283 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 06.02 07:00:28" (1/3) ... [2025-02-06 19:00:29,284 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@3b7e233d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 06.02 07:00:29, skipping insertion in model container [2025-02-06 19:00:29,284 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-02-06 19:00:29,285 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 06.02 07:00:29" (2/3) ... [2025-02-06 19:00:29,285 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@3b7e233d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 06.02 07:00:29, skipping insertion in model container [2025-02-06 19:00:29,285 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-02-06 19:00:29,286 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 06.02 07:00:29" (3/3) ... [2025-02-06 19:00:29,287 INFO L363 chiAutomizerObserver]: Analyzing ICFG Binomial.c [2025-02-06 19:00:29,325 INFO L306 stractBuchiCegarLoop]: Interprodecural is true [2025-02-06 19:00:29,325 INFO L307 stractBuchiCegarLoop]: Hoare is None [2025-02-06 19:00:29,325 INFO L308 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2025-02-06 19:00:29,325 INFO L309 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2025-02-06 19:00:29,325 INFO L310 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2025-02-06 19:00:29,325 INFO L311 stractBuchiCegarLoop]: Difference is false [2025-02-06 19:00:29,325 INFO L312 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2025-02-06 19:00:29,326 INFO L316 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2025-02-06 19:00:29,329 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 27 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 18 states have internal predecessors, (24), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2025-02-06 19:00:29,342 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 17 [2025-02-06 19:00:29,342 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:29,342 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:29,345 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2025-02-06 19:00:29,345 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-02-06 19:00:29,345 INFO L338 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2025-02-06 19:00:29,345 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 27 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 18 states have internal predecessors, (24), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2025-02-06 19:00:29,347 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 17 [2025-02-06 19:00:29,347 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:29,347 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:29,347 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2025-02-06 19:00:29,347 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2025-02-06 19:00:29,351 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" [2025-02-06 19:00:29,351 INFO L754 eck$LassoCheckResult]: Loop: "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" [2025-02-06 19:00:29,356 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:29,357 INFO L85 PathProgramCache]: Analyzing trace with hash 2123067, now seen corresponding path program 1 times [2025-02-06 19:00:29,362 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:29,362 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1910451593] [2025-02-06 19:00:29,363 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:29,363 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:29,404 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-02-06 19:00:29,410 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-02-06 19:00:29,411 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:29,411 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:29,411 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:29,414 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-02-06 19:00:29,415 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-02-06 19:00:29,415 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:29,415 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:29,429 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:29,431 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:29,432 INFO L85 PathProgramCache]: Analyzing trace with hash 1806, now seen corresponding path program 1 times [2025-02-06 19:00:29,432 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:29,432 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [131262886] [2025-02-06 19:00:29,432 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:29,432 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:29,439 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-02-06 19:00:29,444 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-02-06 19:00:29,445 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:29,445 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:29,445 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:29,447 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-02-06 19:00:29,449 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-02-06 19:00:29,450 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:29,451 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:29,452 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:29,454 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:29,454 INFO L85 PathProgramCache]: Analyzing trace with hash 2040268232, now seen corresponding path program 1 times [2025-02-06 19:00:29,454 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:29,455 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [793261202] [2025-02-06 19:00:29,455 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:29,455 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:29,459 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-02-06 19:00:29,464 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-02-06 19:00:29,465 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:29,466 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:29,550 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 19:00:29,556 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:29,557 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [793261202] [2025-02-06 19:00:29,557 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [793261202] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 19:00:29,557 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 19:00:29,558 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-02-06 19:00:29,558 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [586905629] [2025-02-06 19:00:29,558 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 19:00:29,615 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:29,616 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:29,616 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:29,617 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:29,617 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:00:29,617 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,617 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:29,618 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:29,618 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration1_Loop [2025-02-06 19:00:29,618 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:29,618 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:29,628 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:29,635 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:29,638 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:29,679 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:29,679 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:00:29,680 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,681 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:29,682 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:29,684 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2025-02-06 19:00:29,685 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:29,685 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:29,698 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:29,698 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_~k~0#1=0} Honda state: {ULTIMATE.start_main_~k~0#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:29,704 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Ended with exit code 0 [2025-02-06 19:00:29,704 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,704 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:29,706 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:29,707 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2025-02-06 19:00:29,707 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:29,707 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:29,718 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:29,718 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post10#1=0} Honda state: {ULTIMATE.start_main_#t~post10#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:29,724 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:29,724 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,724 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:29,726 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:29,728 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:29,728 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:29,728 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2025-02-06 19:00:29,745 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Ended with exit code 0 [2025-02-06 19:00:29,746 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,746 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:29,748 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:29,749 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2025-02-06 19:00:29,750 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:00:29,751 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:29,813 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:00:29,818 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:29,819 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:29,819 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:29,819 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:29,819 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:29,819 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:00:29,819 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,819 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:29,819 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:29,819 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration1_Loop [2025-02-06 19:00:29,819 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:29,820 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:29,820 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:29,829 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:29,831 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:29,859 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:29,862 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:00:29,863 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:29,865 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:29,866 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2025-02-06 19:00:29,867 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:29,879 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:29,880 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:29,880 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:29,880 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:29,880 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:29,883 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:29,883 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:29,885 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:29,891 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:29,891 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,891 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:29,893 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:29,894 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2025-02-06 19:00:29,896 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:29,906 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:29,906 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:29,906 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:29,906 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:29,906 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:29,907 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:29,907 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:29,908 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:29,914 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:29,915 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,915 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:29,916 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:29,918 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2025-02-06 19:00:29,919 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:29,929 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:29,929 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:29,929 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:29,929 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:29,929 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:29,930 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:29,930 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:29,932 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:00:29,936 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2025-02-06 19:00:29,938 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 2 variables to zero. [2025-02-06 19:00:29,940 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:29,940 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:29,941 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:29,942 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2025-02-06 19:00:29,943 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:00:29,943 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:00:29,943 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:00:29,943 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~n~0#1) = -1*ULTIMATE.start_main_~n~0#1 Supporting invariants [] [2025-02-06 19:00:29,949 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Ended with exit code 0 [2025-02-06 19:00:29,951 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:00:29,969 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:29,978 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-02-06 19:00:29,979 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-02-06 19:00:29,979 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:29,979 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:29,980 INFO L256 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-02-06 19:00:29,981 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:29,990 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 2 statements into 1 equivalence classes. [2025-02-06 19:00:29,991 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 2 of 2 statements. [2025-02-06 19:00:29,991 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:29,991 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:29,991 WARN L254 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 6 conjuncts are in the unsatisfiable core [2025-02-06 19:00:29,992 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:30,017 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 19:00:30,041 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2025-02-06 19:00:30,042 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 27 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 18 states have internal predecessors, (24), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-02-06 19:00:30,095 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 27 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 18 states have internal predecessors, (24), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7). Second operand has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 41 states and 58 transitions. Complement of second has 5 states. [2025-02-06 19:00:30,097 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 3 states 1 stem states 1 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:30,100 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.0) internal successors, (6), 3 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-02-06 19:00:30,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 13 transitions. [2025-02-06 19:00:30,106 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 13 transitions. Stem has 4 letters. Loop has 2 letters. [2025-02-06 19:00:30,107 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:30,107 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 13 transitions. Stem has 6 letters. Loop has 2 letters. [2025-02-06 19:00:30,107 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:30,107 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 13 transitions. Stem has 4 letters. Loop has 4 letters. [2025-02-06 19:00:30,108 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:30,108 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 41 states and 58 transitions. [2025-02-06 19:00:30,110 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 17 [2025-02-06 19:00:30,113 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 41 states to 31 states and 45 transitions. [2025-02-06 19:00:30,114 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2025-02-06 19:00:30,114 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 29 [2025-02-06 19:00:30,114 INFO L73 IsDeterministic]: Start isDeterministic. Operand 31 states and 45 transitions. [2025-02-06 19:00:30,115 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:30,115 INFO L218 hiAutomatonCegarLoop]: Abstraction has 31 states and 45 transitions. [2025-02-06 19:00:30,123 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states and 45 transitions. [2025-02-06 19:00:30,132 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 28. [2025-02-06 19:00:30,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 20 states have (on average 1.25) internal successors, (25), 19 states have internal predecessors, (25), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2025-02-06 19:00:30,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 39 transitions. [2025-02-06 19:00:30,146 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28 states and 39 transitions. [2025-02-06 19:00:30,146 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:30,147 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-02-06 19:00:30,147 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-02-06 19:00:30,148 INFO L87 Difference]: Start difference. First operand 28 states and 39 transitions. Second operand has 4 states, 3 states have (on average 2.0) internal successors, (6), 4 states have internal predecessors, (6), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-02-06 19:00:30,153 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Ended with exit code 0 [2025-02-06 19:00:30,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:30,206 INFO L93 Difference]: Finished difference Result 28 states and 37 transitions. [2025-02-06 19:00:30,206 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 28 states and 37 transitions. [2025-02-06 19:00:30,207 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2025-02-06 19:00:30,208 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 28 states to 27 states and 36 transitions. [2025-02-06 19:00:30,208 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 27 [2025-02-06 19:00:30,208 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 27 [2025-02-06 19:00:30,208 INFO L73 IsDeterministic]: Start isDeterministic. Operand 27 states and 36 transitions. [2025-02-06 19:00:30,208 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-02-06 19:00:30,208 INFO L218 hiAutomatonCegarLoop]: Abstraction has 27 states and 36 transitions. [2025-02-06 19:00:30,208 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states and 36 transitions. [2025-02-06 19:00:30,209 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 25. [2025-02-06 19:00:30,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 16 states have internal predecessors, (20), 7 states have call successors, (7), 1 states have call predecessors, (7), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2025-02-06 19:00:30,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 34 transitions. [2025-02-06 19:00:30,210 INFO L240 hiAutomatonCegarLoop]: Abstraction has 25 states and 34 transitions. [2025-02-06 19:00:30,211 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-02-06 19:00:30,211 INFO L432 stractBuchiCegarLoop]: Abstraction has 25 states and 34 transitions. [2025-02-06 19:00:30,211 INFO L338 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2025-02-06 19:00:30,211 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 25 states and 34 transitions. [2025-02-06 19:00:30,212 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 18 [2025-02-06 19:00:30,212 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:30,212 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:30,213 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2025-02-06 19:00:30,213 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:30,213 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" [2025-02-06 19:00:30,213 INFO L754 eck$LassoCheckResult]: Loop: "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" [2025-02-06 19:00:30,215 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:30,215 INFO L85 PathProgramCache]: Analyzing trace with hash 2123067, now seen corresponding path program 2 times [2025-02-06 19:00:30,215 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:30,215 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1220975224] [2025-02-06 19:00:30,215 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:30,215 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:30,218 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 4 statements into 1 equivalence classes. [2025-02-06 19:00:30,222 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-02-06 19:00:30,222 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-02-06 19:00:30,222 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:30,222 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:30,223 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-02-06 19:00:30,224 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-02-06 19:00:30,224 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:30,224 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:30,225 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:30,225 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:30,225 INFO L85 PathProgramCache]: Analyzing trace with hash 114375069, now seen corresponding path program 1 times [2025-02-06 19:00:30,225 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:30,225 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [329086697] [2025-02-06 19:00:30,225 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:30,225 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:30,235 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-02-06 19:00:30,254 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-02-06 19:00:30,255 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:30,255 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:30,256 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1203342230] [2025-02-06 19:00:30,256 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:30,256 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:30,257 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,258 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,260 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2025-02-06 19:00:30,280 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-02-06 19:00:30,289 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-02-06 19:00:30,289 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:30,289 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:30,289 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:30,294 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-02-06 19:00:30,298 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-02-06 19:00:30,298 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:30,298 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:30,304 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:30,305 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:30,305 INFO L85 PathProgramCache]: Analyzing trace with hash -1885038761, now seen corresponding path program 1 times [2025-02-06 19:00:30,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:30,305 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [569186357] [2025-02-06 19:00:30,305 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:30,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:30,309 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 26 statements into 1 equivalence classes. [2025-02-06 19:00:30,328 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 26 of 26 statements. [2025-02-06 19:00:30,328 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:30,328 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:30,329 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1337709480] [2025-02-06 19:00:30,329 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:30,329 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:30,329 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,331 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,332 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2025-02-06 19:00:30,354 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 26 statements into 1 equivalence classes. [2025-02-06 19:00:30,363 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 26 of 26 statements. [2025-02-06 19:00:30,363 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:30,363 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:30,363 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:30,369 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 26 statements into 1 equivalence classes. [2025-02-06 19:00:30,373 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 26 of 26 statements. [2025-02-06 19:00:30,373 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:30,373 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:30,381 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:30,593 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:30,593 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:30,593 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:30,593 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:30,593 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:00:30,593 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,593 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:30,593 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:30,593 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration2_Loop [2025-02-06 19:00:30,593 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:30,593 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:30,594 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,596 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,597 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,599 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,603 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,605 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,607 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,608 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,610 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,612 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,613 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,615 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,617 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,670 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:30,671 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:00:30,671 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,671 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,674 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,676 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Waiting until timeout for monitored process [2025-02-06 19:00:30,676 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:30,676 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:30,689 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:30,689 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:30,695 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Ended with exit code 0 [2025-02-06 19:00:30,695 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,695 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,697 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,697 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Waiting until timeout for monitored process [2025-02-06 19:00:30,699 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:30,699 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:30,710 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:30,711 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post9#1=0} Honda state: {ULTIMATE.start_main_#t~post9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:30,716 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Ended with exit code 0 [2025-02-06 19:00:30,716 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,717 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,719 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,719 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Waiting until timeout for monitored process [2025-02-06 19:00:30,720 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:30,720 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:30,731 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:30,731 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~k#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_~k#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:30,737 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Ended with exit code 0 [2025-02-06 19:00:30,737 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,737 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,739 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,742 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Waiting until timeout for monitored process [2025-02-06 19:00:30,743 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:30,743 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:30,760 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Ended with exit code 0 [2025-02-06 19:00:30,760 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,760 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,762 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,763 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Waiting until timeout for monitored process [2025-02-06 19:00:30,764 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:00:30,764 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:30,775 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:00:30,782 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Ended with exit code 0 [2025-02-06 19:00:30,782 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:30,782 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:30,782 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:30,782 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:30,782 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:00:30,782 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,782 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:30,782 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:30,782 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration2_Loop [2025-02-06 19:00:30,782 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:30,782 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:30,783 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,791 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,793 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,795 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,796 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,800 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,801 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,803 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,804 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,806 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,807 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,809 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,811 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:30,856 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:30,857 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:00:30,857 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,857 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,859 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,859 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Waiting until timeout for monitored process [2025-02-06 19:00:30,860 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:30,870 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:30,870 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:30,870 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:30,870 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:30,870 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:30,871 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:30,871 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:30,872 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:30,877 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:30,877 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,877 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,879 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,880 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Waiting until timeout for monitored process [2025-02-06 19:00:30,882 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:30,891 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:30,891 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:30,891 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:30,891 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:30,891 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:30,892 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:30,892 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:30,894 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:30,899 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Ended with exit code 0 [2025-02-06 19:00:30,899 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,900 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,901 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,902 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Waiting until timeout for monitored process [2025-02-06 19:00:30,902 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:30,912 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:30,912 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:30,912 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:30,912 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:30,912 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:30,913 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:30,913 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:30,914 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:30,919 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Ended with exit code 0 [2025-02-06 19:00:30,920 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,920 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,922 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,923 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Waiting until timeout for monitored process [2025-02-06 19:00:30,924 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:30,934 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:30,934 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:30,934 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:30,934 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:30,934 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:30,934 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:30,934 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:30,935 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:30,940 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Ended with exit code 0 [2025-02-06 19:00:30,941 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,941 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,942 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,943 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Waiting until timeout for monitored process [2025-02-06 19:00:30,944 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:30,953 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:30,953 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:30,953 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:30,953 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:30,953 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:30,955 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:30,955 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:30,958 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:00:30,960 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:00:30,960 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:00:30,960 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:30,960 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:30,962 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:30,963 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Waiting until timeout for monitored process [2025-02-06 19:00:30,964 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:00:30,964 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:00:30,964 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:00:30,964 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~n~0#1) = -2*ULTIMATE.start_main_~n~0#1 + 1 Supporting invariants [] [2025-02-06 19:00:30,970 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Ended with exit code 0 [2025-02-06 19:00:30,971 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:00:30,990 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:30,994 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-02-06 19:00:30,995 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-02-06 19:00:30,995 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:30,995 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:30,996 INFO L256 TraceCheckSpWp]: Trace formula consists of 8 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-02-06 19:00:30,996 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:31,015 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-02-06 19:00:31,041 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-02-06 19:00:31,041 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:31,041 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:31,043 INFO L256 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 14 conjuncts are in the unsatisfiable core [2025-02-06 19:00:31,044 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:31,120 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:31,187 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 1 proven. 6 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2025-02-06 19:00:31,190 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 6 loop predicates [2025-02-06 19:00:31,190 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 25 states and 34 transitions. cyclomatic complexity: 11 Second operand has 8 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 8 states have internal predecessors, (17), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2025-02-06 19:00:31,408 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 25 states and 34 transitions. cyclomatic complexity: 11. Second operand has 8 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 8 states have internal predecessors, (17), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Result 111 states and 174 transitions. Complement of second has 28 states. [2025-02-06 19:00:31,408 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 9 states 1 stem states 7 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:31,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.4285714285714284) internal successors, (17), 8 states have internal predecessors, (17), 2 states have call successors, (3), 1 states have call predecessors, (3), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2025-02-06 19:00:31,410 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2025-02-06 19:00:31,410 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 69 transitions. Stem has 4 letters. Loop has 22 letters. [2025-02-06 19:00:31,410 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:31,410 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 69 transitions. Stem has 26 letters. Loop has 22 letters. [2025-02-06 19:00:31,410 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:31,410 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 9 states and 69 transitions. Stem has 4 letters. Loop has 44 letters. [2025-02-06 19:00:31,411 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:31,411 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 111 states and 174 transitions. [2025-02-06 19:00:31,414 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 31 [2025-02-06 19:00:31,417 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 111 states to 111 states and 174 transitions. [2025-02-06 19:00:31,417 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 57 [2025-02-06 19:00:31,417 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 58 [2025-02-06 19:00:31,417 INFO L73 IsDeterministic]: Start isDeterministic. Operand 111 states and 174 transitions. [2025-02-06 19:00:31,417 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:31,417 INFO L218 hiAutomatonCegarLoop]: Abstraction has 111 states and 174 transitions. [2025-02-06 19:00:31,419 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states and 174 transitions. [2025-02-06 19:00:31,431 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 102. [2025-02-06 19:00:31,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 64 states have (on average 1.234375) internal successors, (79), 65 states have internal predecessors, (79), 30 states have call successors, (30), 6 states have call predecessors, (30), 8 states have return successors, (42), 30 states have call predecessors, (42), 30 states have call successors, (42) [2025-02-06 19:00:31,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 151 transitions. [2025-02-06 19:00:31,433 INFO L240 hiAutomatonCegarLoop]: Abstraction has 102 states and 151 transitions. [2025-02-06 19:00:31,433 INFO L432 stractBuchiCegarLoop]: Abstraction has 102 states and 151 transitions. [2025-02-06 19:00:31,433 INFO L338 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2025-02-06 19:00:31,433 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 102 states and 151 transitions. [2025-02-06 19:00:31,439 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 31 [2025-02-06 19:00:31,439 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:31,439 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:31,439 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2025-02-06 19:00:31,439 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:31,440 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:00:31,440 INFO L754 eck$LassoCheckResult]: Loop: "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:00:31,440 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:31,440 INFO L85 PathProgramCache]: Analyzing trace with hash 65815104, now seen corresponding path program 1 times [2025-02-06 19:00:31,440 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:31,440 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1840484913] [2025-02-06 19:00:31,440 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:31,440 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:31,444 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 5 statements into 1 equivalence classes. [2025-02-06 19:00:31,445 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-06 19:00:31,445 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:31,445 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:31,445 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:31,447 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 5 statements into 1 equivalence classes. [2025-02-06 19:00:31,449 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-06 19:00:31,450 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:31,450 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:31,451 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:31,452 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:31,453 INFO L85 PathProgramCache]: Analyzing trace with hash 1761412171, now seen corresponding path program 1 times [2025-02-06 19:00:31,453 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:31,453 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1006105719] [2025-02-06 19:00:31,453 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:31,453 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:31,458 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 40 statements into 1 equivalence classes. [2025-02-06 19:00:31,476 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 40 of 40 statements. [2025-02-06 19:00:31,476 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:31,476 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:31,575 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2025-02-06 19:00:31,575 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:31,575 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1006105719] [2025-02-06 19:00:31,575 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1006105719] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 19:00:31,575 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 19:00:31,575 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-02-06 19:00:31,575 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [977517777] [2025-02-06 19:00:31,575 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 19:00:31,575 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:00:31,575 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:31,576 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-02-06 19:00:31,576 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-02-06 19:00:31,576 INFO L87 Difference]: Start difference. First operand 102 states and 151 transitions. cyclomatic complexity: 54 Second operand has 5 states, 4 states have (on average 3.0) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-02-06 19:00:31,615 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:31,615 INFO L93 Difference]: Finished difference Result 141 states and 212 transitions. [2025-02-06 19:00:31,615 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 141 states and 212 transitions. [2025-02-06 19:00:31,620 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 49 [2025-02-06 19:00:31,622 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 141 states to 138 states and 209 transitions. [2025-02-06 19:00:31,622 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 71 [2025-02-06 19:00:31,622 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 71 [2025-02-06 19:00:31,622 INFO L73 IsDeterministic]: Start isDeterministic. Operand 138 states and 209 transitions. [2025-02-06 19:00:31,623 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:31,623 INFO L218 hiAutomatonCegarLoop]: Abstraction has 138 states and 209 transitions. [2025-02-06 19:00:31,623 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 138 states and 209 transitions. [2025-02-06 19:00:31,631 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 138 to 106. [2025-02-06 19:00:31,634 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 69 states have internal predecessors, (83), 30 states have call successors, (30), 6 states have call predecessors, (30), 8 states have return successors, (42), 30 states have call predecessors, (42), 30 states have call successors, (42) [2025-02-06 19:00:31,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 155 transitions. [2025-02-06 19:00:31,637 INFO L240 hiAutomatonCegarLoop]: Abstraction has 106 states and 155 transitions. [2025-02-06 19:00:31,638 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-02-06 19:00:31,638 INFO L432 stractBuchiCegarLoop]: Abstraction has 106 states and 155 transitions. [2025-02-06 19:00:31,638 INFO L338 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2025-02-06 19:00:31,638 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 106 states and 155 transitions. [2025-02-06 19:00:31,639 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 32 [2025-02-06 19:00:31,640 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:31,641 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:31,644 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2025-02-06 19:00:31,644 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:31,645 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:00:31,645 INFO L754 eck$LassoCheckResult]: Loop: "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" [2025-02-06 19:00:31,645 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:31,645 INFO L85 PathProgramCache]: Analyzing trace with hash 65815104, now seen corresponding path program 2 times [2025-02-06 19:00:31,645 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:31,645 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [16646979] [2025-02-06 19:00:31,645 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:31,645 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:31,647 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 5 statements into 1 equivalence classes. [2025-02-06 19:00:31,648 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-06 19:00:31,648 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-02-06 19:00:31,648 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:31,648 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:31,650 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 5 statements into 1 equivalence classes. [2025-02-06 19:00:31,651 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-06 19:00:31,651 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:31,651 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:31,652 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:31,652 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:31,652 INFO L85 PathProgramCache]: Analyzing trace with hash 743731512, now seen corresponding path program 1 times [2025-02-06 19:00:31,652 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:31,652 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [984470733] [2025-02-06 19:00:31,652 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:31,656 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:31,663 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 38 statements into 1 equivalence classes. [2025-02-06 19:00:31,673 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 38 of 38 statements. [2025-02-06 19:00:31,673 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:31,673 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:31,955 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 9 proven. 36 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2025-02-06 19:00:31,955 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:31,955 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [984470733] [2025-02-06 19:00:31,955 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [984470733] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:00:31,955 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1994747217] [2025-02-06 19:00:31,955 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:31,955 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:31,955 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:31,957 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:31,958 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2025-02-06 19:00:31,984 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 38 statements into 1 equivalence classes. [2025-02-06 19:00:31,994 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 38 of 38 statements. [2025-02-06 19:00:31,994 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:31,994 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:31,994 INFO L256 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 11 conjuncts are in the unsatisfiable core [2025-02-06 19:00:31,996 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:32,061 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 7 proven. 35 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2025-02-06 19:00:32,062 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:00:32,292 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 7 proven. 36 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2025-02-06 19:00:32,292 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1994747217] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:00:32,292 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:00:32,292 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9, 10] total 19 [2025-02-06 19:00:32,292 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1370768938] [2025-02-06 19:00:32,292 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:00:32,292 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:00:32,292 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:32,292 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2025-02-06 19:00:32,293 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=274, Unknown=0, NotChecked=0, Total=342 [2025-02-06 19:00:32,293 INFO L87 Difference]: Start difference. First operand 106 states and 155 transitions. cyclomatic complexity: 54 Second operand has 19 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 12 states have call successors, (12), 1 states have call predecessors, (12), 4 states have return successors, (13), 10 states have call predecessors, (13), 12 states have call successors, (13) [2025-02-06 19:00:32,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:32,590 INFO L93 Difference]: Finished difference Result 228 states and 371 transitions. [2025-02-06 19:00:32,591 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 228 states and 371 transitions. [2025-02-06 19:00:32,593 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 76 [2025-02-06 19:00:32,596 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 228 states to 228 states and 371 transitions. [2025-02-06 19:00:32,596 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 115 [2025-02-06 19:00:32,596 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 115 [2025-02-06 19:00:32,596 INFO L73 IsDeterministic]: Start isDeterministic. Operand 228 states and 371 transitions. [2025-02-06 19:00:32,596 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:32,596 INFO L218 hiAutomatonCegarLoop]: Abstraction has 228 states and 371 transitions. [2025-02-06 19:00:32,596 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 228 states and 371 transitions. [2025-02-06 19:00:32,607 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 228 to 150. [2025-02-06 19:00:32,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 150 states, 88 states have (on average 1.1704545454545454) internal successors, (103), 89 states have internal predecessors, (103), 46 states have call successors, (46), 10 states have call predecessors, (46), 16 states have return successors, (116), 50 states have call predecessors, (116), 46 states have call successors, (116) [2025-02-06 19:00:32,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 150 states to 150 states and 265 transitions. [2025-02-06 19:00:32,609 INFO L240 hiAutomatonCegarLoop]: Abstraction has 150 states and 265 transitions. [2025-02-06 19:00:32,609 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2025-02-06 19:00:32,610 INFO L432 stractBuchiCegarLoop]: Abstraction has 150 states and 265 transitions. [2025-02-06 19:00:32,610 INFO L338 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2025-02-06 19:00:32,610 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 150 states and 265 transitions. [2025-02-06 19:00:32,611 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 40 [2025-02-06 19:00:32,611 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:32,611 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:32,612 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2025-02-06 19:00:32,612 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [7, 7, 4, 4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:32,612 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:00:32,612 INFO L754 eck$LassoCheckResult]: Loop: "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" [2025-02-06 19:00:32,612 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:32,612 INFO L85 PathProgramCache]: Analyzing trace with hash 65815104, now seen corresponding path program 3 times [2025-02-06 19:00:32,612 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:32,612 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [591659853] [2025-02-06 19:00:32,612 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:00:32,612 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:32,614 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 5 statements into 1 equivalence classes. [2025-02-06 19:00:32,615 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-06 19:00:32,615 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-02-06 19:00:32,615 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:32,615 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:32,615 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 5 statements into 1 equivalence classes. [2025-02-06 19:00:32,616 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-06 19:00:32,616 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:32,616 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:32,616 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:32,617 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:32,617 INFO L85 PathProgramCache]: Analyzing trace with hash -2139074158, now seen corresponding path program 2 times [2025-02-06 19:00:32,617 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:32,617 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [818273518] [2025-02-06 19:00:32,617 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:32,617 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:32,620 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 44 statements into 2 equivalence classes. [2025-02-06 19:00:32,633 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 44 of 44 statements. [2025-02-06 19:00:32,633 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:32,633 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:32,634 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [210760876] [2025-02-06 19:00:32,634 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:32,634 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:32,634 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:32,637 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:32,638 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2025-02-06 19:00:32,678 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 44 statements into 2 equivalence classes. [2025-02-06 19:00:32,693 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 44 of 44 statements. [2025-02-06 19:00:32,693 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:32,693 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:32,693 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:32,697 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-02-06 19:00:32,703 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-02-06 19:00:32,704 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:32,704 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:32,711 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:32,711 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:32,712 INFO L85 PathProgramCache]: Analyzing trace with hash -769560239, now seen corresponding path program 1 times [2025-02-06 19:00:32,712 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:32,712 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [311802368] [2025-02-06 19:00:32,712 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:32,712 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:32,715 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 49 statements into 1 equivalence classes. [2025-02-06 19:00:32,716 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 49 of 49 statements. [2025-02-06 19:00:32,716 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:32,716 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:32,780 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 5 proven. 19 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2025-02-06 19:00:32,780 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:32,780 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [311802368] [2025-02-06 19:00:32,780 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [311802368] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:00:32,781 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1683537611] [2025-02-06 19:00:32,781 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:32,781 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:32,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:32,782 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:32,784 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2025-02-06 19:00:32,810 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 49 statements into 1 equivalence classes. [2025-02-06 19:00:32,820 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 49 of 49 statements. [2025-02-06 19:00:32,820 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:32,821 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:32,821 INFO L256 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 6 conjuncts are in the unsatisfiable core [2025-02-06 19:00:32,822 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:32,843 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 61 proven. 3 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2025-02-06 19:00:32,843 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:00:32,904 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 5 proven. 19 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2025-02-06 19:00:32,904 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1683537611] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:00:32,904 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:00:32,904 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 9 [2025-02-06 19:00:32,904 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1284046097] [2025-02-06 19:00:32,904 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:00:33,172 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:33,172 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:33,172 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:33,172 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:33,173 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:00:33,173 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,173 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:33,173 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:33,173 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration5_Loop [2025-02-06 19:00:33,173 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:33,173 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:33,173 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,175 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,176 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,178 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,179 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,183 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,184 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,186 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,187 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,188 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,190 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,192 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,229 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:33,229 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:00:33,229 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,229 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,233 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,234 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Waiting until timeout for monitored process [2025-02-06 19:00:33,235 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:33,235 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:33,247 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:33,247 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:33,254 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:33,254 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,254 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,256 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,258 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Waiting until timeout for monitored process [2025-02-06 19:00:33,258 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:33,259 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:33,269 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:33,269 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:33,275 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:33,275 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,275 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,280 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,280 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Waiting until timeout for monitored process [2025-02-06 19:00:33,282 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:33,282 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:33,293 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:33,293 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post9#1=0} Honda state: {ULTIMATE.start_main_#t~post9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:33,299 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Ended with exit code 0 [2025-02-06 19:00:33,299 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,300 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,302 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,306 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Waiting until timeout for monitored process [2025-02-06 19:00:33,307 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:33,307 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:33,320 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:33,320 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~k#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_~k#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:33,328 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:33,329 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,329 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,331 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,332 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Waiting until timeout for monitored process [2025-02-06 19:00:33,334 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:33,334 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:33,352 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:33,352 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,353 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,354 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,356 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Waiting until timeout for monitored process [2025-02-06 19:00:33,357 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:00:33,357 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:33,369 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:00:33,375 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Ended with exit code 0 [2025-02-06 19:00:33,375 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:33,375 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:33,375 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:33,375 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:33,375 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:00:33,375 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,375 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:33,375 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:33,375 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration5_Loop [2025-02-06 19:00:33,375 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:33,375 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:33,376 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,380 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,383 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,384 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,385 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,386 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,390 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,392 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,394 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,396 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,397 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,399 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:33,449 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:33,449 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:00:33,449 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,449 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,452 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,453 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Waiting until timeout for monitored process [2025-02-06 19:00:33,455 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:33,466 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:33,466 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:33,466 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:33,466 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:33,466 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:33,467 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:33,467 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:33,469 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:33,474 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:33,475 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,475 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,476 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,478 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Waiting until timeout for monitored process [2025-02-06 19:00:33,479 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:33,493 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:33,494 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:33,494 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:33,494 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:33,494 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:33,495 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:33,495 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:33,496 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:33,504 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Ended with exit code 0 [2025-02-06 19:00:33,504 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,505 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,506 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,507 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Waiting until timeout for monitored process [2025-02-06 19:00:33,509 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:33,518 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:33,518 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:33,518 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:33,518 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:33,518 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:33,519 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:33,519 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:33,520 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:33,525 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Ended with exit code 0 [2025-02-06 19:00:33,525 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,525 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,527 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,527 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Waiting until timeout for monitored process [2025-02-06 19:00:33,528 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:33,538 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:33,538 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:33,538 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:33,538 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:33,538 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:33,539 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:33,539 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:33,540 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:33,545 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Ended with exit code 0 [2025-02-06 19:00:33,545 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,546 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,547 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,548 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Waiting until timeout for monitored process [2025-02-06 19:00:33,548 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:33,558 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:33,558 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:33,558 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:33,558 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:33,558 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:33,558 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:33,558 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:33,559 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:33,565 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Ended with exit code 0 [2025-02-06 19:00:33,565 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,565 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,566 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,567 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Waiting until timeout for monitored process [2025-02-06 19:00:33,568 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:33,578 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:33,578 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:33,578 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:33,578 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:33,578 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:33,580 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:33,580 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:33,582 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:00:33,583 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:00:33,584 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:00:33,584 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:33,584 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:33,586 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:33,587 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Waiting until timeout for monitored process [2025-02-06 19:00:33,587 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:00:33,587 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:00:33,588 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:00:33,588 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 3 Supporting invariants [] [2025-02-06 19:00:33,593 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Ended with exit code 0 [2025-02-06 19:00:33,594 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:00:33,604 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:33,607 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 5 statements into 1 equivalence classes. [2025-02-06 19:00:33,608 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-02-06 19:00:33,608 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:33,608 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:33,608 INFO L256 TraceCheckSpWp]: Trace formula consists of 11 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-02-06 19:00:33,608 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:33,625 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-02-06 19:00:33,648 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-02-06 19:00:33,648 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:33,648 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:33,649 INFO L256 TraceCheckSpWp]: Trace formula consists of 298 conjuncts, 24 conjuncts are in the unsatisfiable core [2025-02-06 19:00:33,651 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:33,789 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 22 proven. 16 refuted. 0 times theorem prover too weak. 58 trivial. 0 not checked. [2025-02-06 19:00:33,789 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 7 loop predicates [2025-02-06 19:00:33,790 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 150 states and 265 transitions. cyclomatic complexity: 120 Second operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 states have internal predecessors, (21), 4 states have call successors, (5), 1 states have call predecessors, (5), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2025-02-06 19:00:34,034 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 150 states and 265 transitions. cyclomatic complexity: 120. Second operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 states have internal predecessors, (21), 4 states have call successors, (5), 1 states have call predecessors, (5), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Result 701 states and 1098 transitions. Complement of second has 51 states. [2025-02-06 19:00:34,035 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 11 states 1 stem states 9 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:34,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 9 states have internal predecessors, (21), 4 states have call successors, (5), 1 states have call predecessors, (5), 3 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2025-02-06 19:00:34,035 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 57 transitions. [2025-02-06 19:00:34,036 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 57 transitions. Stem has 5 letters. Loop has 44 letters. [2025-02-06 19:00:34,036 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:34,036 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 57 transitions. Stem has 49 letters. Loop has 44 letters. [2025-02-06 19:00:34,036 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:34,036 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 57 transitions. Stem has 5 letters. Loop has 88 letters. [2025-02-06 19:00:34,037 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:34,037 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 701 states and 1098 transitions. [2025-02-06 19:00:34,047 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 79 [2025-02-06 19:00:34,057 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 701 states to 637 states and 1008 transitions. [2025-02-06 19:00:34,057 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 184 [2025-02-06 19:00:34,059 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 186 [2025-02-06 19:00:34,059 INFO L73 IsDeterministic]: Start isDeterministic. Operand 637 states and 1008 transitions. [2025-02-06 19:00:34,061 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:34,061 INFO L218 hiAutomatonCegarLoop]: Abstraction has 637 states and 1008 transitions. [2025-02-06 19:00:34,061 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 637 states and 1008 transitions. [2025-02-06 19:00:34,085 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 637 to 601. [2025-02-06 19:00:34,086 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 601 states, 361 states have (on average 1.1523545706371192) internal successors, (416), 362 states have internal predecessors, (416), 160 states have call successors, (160), 55 states have call predecessors, (160), 80 states have return successors, (374), 183 states have call predecessors, (374), 158 states have call successors, (374) [2025-02-06 19:00:34,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 601 states to 601 states and 950 transitions. [2025-02-06 19:00:34,090 INFO L240 hiAutomatonCegarLoop]: Abstraction has 601 states and 950 transitions. [2025-02-06 19:00:34,090 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:34,090 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2025-02-06 19:00:34,090 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2025-02-06 19:00:34,090 INFO L87 Difference]: Start difference. First operand 601 states and 950 transitions. Second operand has 9 states, 8 states have (on average 3.625) internal successors, (29), 9 states have internal predecessors, (29), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2025-02-06 19:00:34,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:34,171 INFO L93 Difference]: Finished difference Result 526 states and 793 transitions. [2025-02-06 19:00:34,171 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 526 states and 793 transitions. [2025-02-06 19:00:34,176 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 68 [2025-02-06 19:00:34,181 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 526 states to 493 states and 757 transitions. [2025-02-06 19:00:34,181 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 156 [2025-02-06 19:00:34,181 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 156 [2025-02-06 19:00:34,181 INFO L73 IsDeterministic]: Start isDeterministic. Operand 493 states and 757 transitions. [2025-02-06 19:00:34,181 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:34,181 INFO L218 hiAutomatonCegarLoop]: Abstraction has 493 states and 757 transitions. [2025-02-06 19:00:34,182 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 493 states and 757 transitions. [2025-02-06 19:00:34,209 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 493 to 492. [2025-02-06 19:00:34,210 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 492 states, 300 states have (on average 1.1633333333333333) internal successors, (349), 307 states have internal predecessors, (349), 126 states have call successors, (126), 47 states have call predecessors, (126), 66 states have return successors, (281), 137 states have call predecessors, (281), 124 states have call successors, (281) [2025-02-06 19:00:34,211 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Ended with exit code 0 [2025-02-06 19:00:34,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 492 states to 492 states and 756 transitions. [2025-02-06 19:00:34,212 INFO L240 hiAutomatonCegarLoop]: Abstraction has 492 states and 756 transitions. [2025-02-06 19:00:34,212 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-02-06 19:00:34,213 INFO L432 stractBuchiCegarLoop]: Abstraction has 492 states and 756 transitions. [2025-02-06 19:00:34,213 INFO L338 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2025-02-06 19:00:34,213 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 492 states and 756 transitions. [2025-02-06 19:00:34,215 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 68 [2025-02-06 19:00:34,215 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:34,215 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:34,216 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2025-02-06 19:00:34,216 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:34,216 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" [2025-02-06 19:00:34,216 INFO L754 eck$LassoCheckResult]: Loop: "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" [2025-02-06 19:00:34,216 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:34,216 INFO L85 PathProgramCache]: Analyzing trace with hash 2040268250, now seen corresponding path program 1 times [2025-02-06 19:00:34,216 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:34,216 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [665314846] [2025-02-06 19:00:34,216 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:34,216 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:34,218 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-02-06 19:00:34,218 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-02-06 19:00:34,218 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:34,218 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:34,218 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:34,219 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-02-06 19:00:34,219 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-02-06 19:00:34,219 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:34,219 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:34,220 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:34,220 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:34,220 INFO L85 PathProgramCache]: Analyzing trace with hash 1229269166, now seen corresponding path program 1 times [2025-02-06 19:00:34,220 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:34,220 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2145742017] [2025-02-06 19:00:34,220 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:34,220 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:34,222 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 38 statements into 1 equivalence classes. [2025-02-06 19:00:34,227 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 38 of 38 statements. [2025-02-06 19:00:34,227 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:34,227 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:34,227 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1420682901] [2025-02-06 19:00:34,227 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:34,227 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:34,227 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,229 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,231 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Waiting until timeout for monitored process [2025-02-06 19:00:34,252 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 38 statements into 1 equivalence classes. [2025-02-06 19:00:34,265 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 38 of 38 statements. [2025-02-06 19:00:34,265 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:34,265 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:34,265 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:34,270 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 38 statements into 1 equivalence classes. [2025-02-06 19:00:34,274 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 38 of 38 statements. [2025-02-06 19:00:34,274 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:34,274 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:34,284 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:34,285 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:34,285 INFO L85 PathProgramCache]: Analyzing trace with hash 344392647, now seen corresponding path program 1 times [2025-02-06 19:00:34,285 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:34,285 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [287828193] [2025-02-06 19:00:34,285 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:34,285 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:34,288 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-02-06 19:00:34,288 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-02-06 19:00:34,288 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:34,288 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:34,314 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2025-02-06 19:00:34,314 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:34,314 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [287828193] [2025-02-06 19:00:34,314 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [287828193] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 19:00:34,314 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 19:00:34,314 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-02-06 19:00:34,314 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1771555660] [2025-02-06 19:00:34,314 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 19:00:34,519 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:34,519 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:34,519 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:34,519 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:34,519 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:00:34,519 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,519 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:34,519 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:34,519 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration6_Loop [2025-02-06 19:00:34,519 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:34,519 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:34,520 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,523 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,525 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,526 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,527 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,528 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,530 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,533 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,536 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,538 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,539 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,540 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,577 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:34,577 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:00:34,577 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,578 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,583 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,584 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Waiting until timeout for monitored process [2025-02-06 19:00:34,586 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:34,586 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:34,597 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:34,598 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:34,603 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Ended with exit code 0 [2025-02-06 19:00:34,604 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,604 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,605 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,607 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Waiting until timeout for monitored process [2025-02-06 19:00:34,608 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:34,608 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:34,619 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:34,619 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~n#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_~n#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:34,625 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Ended with exit code 0 [2025-02-06 19:00:34,626 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,626 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,628 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,630 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Waiting until timeout for monitored process [2025-02-06 19:00:34,630 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:34,630 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:34,644 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:34,644 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~k#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_~k#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:34,650 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Ended with exit code 0 [2025-02-06 19:00:34,650 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,651 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,653 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,654 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Waiting until timeout for monitored process [2025-02-06 19:00:34,654 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:34,655 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:34,666 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:34,666 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#in~k#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#in~k#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:34,673 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:34,674 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,674 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,676 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,677 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Waiting until timeout for monitored process [2025-02-06 19:00:34,679 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:34,679 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:34,689 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:34,689 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:34,695 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:34,696 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,696 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,698 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,699 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Waiting until timeout for monitored process [2025-02-06 19:00:34,700 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:34,700 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:34,711 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:34,711 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post9#1=0} Honda state: {ULTIMATE.start_main_#t~post9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:34,717 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:34,718 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,718 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,720 INFO L229 MonitoredProcess]: Starting monitored process 46 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,721 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Waiting until timeout for monitored process [2025-02-06 19:00:34,723 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:34,723 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:34,738 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:34,739 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,739 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,740 INFO L229 MonitoredProcess]: Starting monitored process 47 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,741 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Waiting until timeout for monitored process [2025-02-06 19:00:34,742 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:00:34,743 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:34,755 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:00:34,761 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Ended with exit code 0 [2025-02-06 19:00:34,761 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:34,761 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:34,761 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:34,761 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:34,761 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:00:34,761 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,761 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:34,761 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:34,761 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration6_Loop [2025-02-06 19:00:34,761 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:34,761 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:34,762 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,763 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,765 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,766 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,767 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,770 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,771 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,772 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,779 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,781 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,782 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,783 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:34,817 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:34,817 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:00:34,817 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,817 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,818 INFO L229 MonitoredProcess]: Starting monitored process 48 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,822 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Waiting until timeout for monitored process [2025-02-06 19:00:34,822 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:34,832 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:34,832 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:34,832 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:34,832 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:34,832 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:34,832 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:34,832 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:34,834 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:34,839 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:34,839 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,839 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,841 INFO L229 MonitoredProcess]: Starting monitored process 49 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,842 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Waiting until timeout for monitored process [2025-02-06 19:00:34,843 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:34,853 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:34,853 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:34,853 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:34,853 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:34,853 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:34,854 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:34,854 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:34,855 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:34,861 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:34,861 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,861 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,863 INFO L229 MonitoredProcess]: Starting monitored process 50 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,864 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Waiting until timeout for monitored process [2025-02-06 19:00:34,864 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:34,874 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:34,874 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:34,875 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:34,875 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:34,875 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:34,878 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:34,878 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:34,880 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:34,885 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Ended with exit code 0 [2025-02-06 19:00:34,886 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,886 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,887 INFO L229 MonitoredProcess]: Starting monitored process 51 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,888 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Waiting until timeout for monitored process [2025-02-06 19:00:34,889 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:34,898 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:34,898 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:34,898 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:34,898 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:34,899 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:34,899 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:34,899 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:34,900 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:34,905 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:34,906 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,906 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,907 INFO L229 MonitoredProcess]: Starting monitored process 52 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,908 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Waiting until timeout for monitored process [2025-02-06 19:00:34,909 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:34,919 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:34,919 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:34,919 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:34,919 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:34,919 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:34,919 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:34,919 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:34,920 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:34,925 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Ended with exit code 0 [2025-02-06 19:00:34,926 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,926 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,927 INFO L229 MonitoredProcess]: Starting monitored process 53 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,929 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Waiting until timeout for monitored process [2025-02-06 19:00:34,930 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:34,940 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:34,940 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:34,940 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:34,940 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:34,940 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:34,940 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:34,940 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:34,941 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:34,947 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:34,947 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,947 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,950 INFO L229 MonitoredProcess]: Starting monitored process 54 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,962 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:34,966 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Waiting until timeout for monitored process [2025-02-06 19:00:34,972 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:34,972 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:34,972 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:34,973 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:34,973 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:34,973 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:34,973 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:34,974 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:34,979 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Ended with exit code 0 [2025-02-06 19:00:34,980 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,980 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:34,981 INFO L229 MonitoredProcess]: Starting monitored process 55 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:34,983 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Waiting until timeout for monitored process [2025-02-06 19:00:34,984 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:34,993 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:34,993 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:34,993 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:34,994 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:34,994 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:34,994 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:34,994 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:34,996 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:00:34,997 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:00:34,997 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:00:34,998 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:34,998 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:35,000 INFO L229 MonitoredProcess]: Starting monitored process 56 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:35,001 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Waiting until timeout for monitored process [2025-02-06 19:00:35,002 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:00:35,002 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:00:35,003 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:00:35,003 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 3 Supporting invariants [] [2025-02-06 19:00:35,008 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Ended with exit code 0 [2025-02-06 19:00:35,009 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:00:35,019 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:35,028 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-02-06 19:00:35,029 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-02-06 19:00:35,029 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:35,029 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:35,029 INFO L256 TraceCheckSpWp]: Trace formula consists of 12 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-02-06 19:00:35,029 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:35,049 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 38 statements into 1 equivalence classes. [2025-02-06 19:00:35,066 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 38 of 38 statements. [2025-02-06 19:00:35,066 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:35,066 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:35,067 INFO L256 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 22 conjuncts are in the unsatisfiable core [2025-02-06 19:00:35,069 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:35,209 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 0 proven. 30 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2025-02-06 19:00:35,210 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 8 loop predicates [2025-02-06 19:00:35,210 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 492 states and 756 transitions. cyclomatic complexity: 281 Second operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 9 states have internal predecessors, (22), 4 states have call successors, (5), 1 states have call predecessors, (5), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2025-02-06 19:00:35,432 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 492 states and 756 transitions. cyclomatic complexity: 281. Second operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 9 states have internal predecessors, (22), 4 states have call successors, (5), 1 states have call predecessors, (5), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) Result 1201 states and 1731 transitions. Complement of second has 41 states. [2025-02-06 19:00:35,432 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 11 states 1 stem states 9 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:35,433 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.75) internal successors, (22), 9 states have internal predecessors, (22), 4 states have call successors, (5), 1 states have call predecessors, (5), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2025-02-06 19:00:35,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 62 transitions. [2025-02-06 19:00:35,434 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 62 transitions. Stem has 6 letters. Loop has 38 letters. [2025-02-06 19:00:35,435 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:35,435 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 62 transitions. Stem has 44 letters. Loop has 38 letters. [2025-02-06 19:00:35,435 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:35,435 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 11 states and 62 transitions. Stem has 6 letters. Loop has 76 letters. [2025-02-06 19:00:35,436 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:35,436 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1201 states and 1731 transitions. [2025-02-06 19:00:35,454 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 59 [2025-02-06 19:00:35,462 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1201 states to 794 states and 1167 transitions. [2025-02-06 19:00:35,462 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 164 [2025-02-06 19:00:35,462 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 169 [2025-02-06 19:00:35,462 INFO L73 IsDeterministic]: Start isDeterministic. Operand 794 states and 1167 transitions. [2025-02-06 19:00:35,463 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:35,463 INFO L218 hiAutomatonCegarLoop]: Abstraction has 794 states and 1167 transitions. [2025-02-06 19:00:35,463 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 794 states and 1167 transitions. [2025-02-06 19:00:35,475 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 794 to 607. [2025-02-06 19:00:35,476 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 607 states, 380 states have (on average 1.2026315789473685) internal successors, (457), 384 states have internal predecessors, (457), 144 states have call successors, (144), 58 states have call predecessors, (144), 83 states have return successors, (289), 164 states have call predecessors, (289), 141 states have call successors, (289) [2025-02-06 19:00:35,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 607 states to 607 states and 890 transitions. [2025-02-06 19:00:35,479 INFO L240 hiAutomatonCegarLoop]: Abstraction has 607 states and 890 transitions. [2025-02-06 19:00:35,479 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:35,479 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-02-06 19:00:35,479 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-02-06 19:00:35,480 INFO L87 Difference]: Start difference. First operand 607 states and 890 transitions. Second operand has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (4), 1 states have call predecessors, (4), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-02-06 19:00:35,509 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:35,510 INFO L93 Difference]: Finished difference Result 511 states and 738 transitions. [2025-02-06 19:00:35,510 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 511 states and 738 transitions. [2025-02-06 19:00:35,513 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 54 [2025-02-06 19:00:35,517 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 511 states to 511 states and 738 transitions. [2025-02-06 19:00:35,517 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 127 [2025-02-06 19:00:35,517 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 127 [2025-02-06 19:00:35,517 INFO L73 IsDeterministic]: Start isDeterministic. Operand 511 states and 738 transitions. [2025-02-06 19:00:35,517 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:35,517 INFO L218 hiAutomatonCegarLoop]: Abstraction has 511 states and 738 transitions. [2025-02-06 19:00:35,518 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 511 states and 738 transitions. [2025-02-06 19:00:35,525 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 511 to 507. [2025-02-06 19:00:35,526 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 507 states, 318 states have (on average 1.1823899371069182) internal successors, (376), 322 states have internal predecessors, (376), 120 states have call successors, (120), 50 states have call predecessors, (120), 69 states have return successors, (238), 134 states have call predecessors, (238), 117 states have call successors, (238) [2025-02-06 19:00:35,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 507 states to 507 states and 734 transitions. [2025-02-06 19:00:35,528 INFO L240 hiAutomatonCegarLoop]: Abstraction has 507 states and 734 transitions. [2025-02-06 19:00:35,529 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-02-06 19:00:35,529 INFO L432 stractBuchiCegarLoop]: Abstraction has 507 states and 734 transitions. [2025-02-06 19:00:35,529 INFO L338 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2025-02-06 19:00:35,529 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 507 states and 734 transitions. [2025-02-06 19:00:35,531 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 53 [2025-02-06 19:00:35,531 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:35,531 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:35,532 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:35,532 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2025-02-06 19:00:35,532 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< [2025-02-06 19:00:35,532 INFO L754 eck$LassoCheckResult]: Loop: "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< [2025-02-06 19:00:35,532 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:35,533 INFO L85 PathProgramCache]: Analyzing trace with hash 623152882, now seen corresponding path program 1 times [2025-02-06 19:00:35,533 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:35,533 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [594434255] [2025-02-06 19:00:35,533 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:35,533 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:35,535 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 11 statements into 1 equivalence classes. [2025-02-06 19:00:35,536 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 11 of 11 statements. [2025-02-06 19:00:35,536 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:35,536 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:35,558 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 19:00:35,558 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:35,558 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [594434255] [2025-02-06 19:00:35,558 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [594434255] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 19:00:35,559 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 19:00:35,559 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2025-02-06 19:00:35,559 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1146558938] [2025-02-06 19:00:35,559 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 19:00:35,559 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:00:35,559 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:35,559 INFO L85 PathProgramCache]: Analyzing trace with hash 33769, now seen corresponding path program 1 times [2025-02-06 19:00:35,559 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:35,559 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1964348452] [2025-02-06 19:00:35,559 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:35,560 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:35,561 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-06 19:00:35,561 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-06 19:00:35,561 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:35,561 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:35,561 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:35,562 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-06 19:00:35,562 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-06 19:00:35,562 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:35,562 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:35,563 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:35,578 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:35,578 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:35,578 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:35,578 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:35,578 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:00:35,578 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:35,578 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:35,578 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:35,578 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration7_Loop [2025-02-06 19:00:35,578 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:35,578 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:35,579 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:35,584 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:35,586 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:35,587 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:35,603 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:35,603 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:00:35,603 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:35,603 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:35,605 INFO L229 MonitoredProcess]: Starting monitored process 57 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:35,605 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Waiting until timeout for monitored process [2025-02-06 19:00:35,606 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:35,606 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:35,621 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Ended with exit code 0 [2025-02-06 19:00:35,621 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:35,622 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:35,623 INFO L229 MonitoredProcess]: Starting monitored process 58 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:35,624 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Waiting until timeout for monitored process [2025-02-06 19:00:35,624 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:00:35,625 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:35,645 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:00:35,649 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Ended with exit code 0 [2025-02-06 19:00:35,649 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:35,649 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:35,649 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:35,649 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:35,649 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:00:35,649 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:35,649 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:35,649 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:35,650 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration7_Loop [2025-02-06 19:00:35,650 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:35,650 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:35,650 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:35,655 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:35,657 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:35,658 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:35,672 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:35,672 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:00:35,672 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:35,672 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:35,674 INFO L229 MonitoredProcess]: Starting monitored process 59 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:35,675 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Waiting until timeout for monitored process [2025-02-06 19:00:35,676 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:35,685 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:35,686 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:35,686 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:35,686 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:35,686 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:35,686 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:35,686 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:35,688 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:00:35,689 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:00:35,689 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 1 variables to zero. [2025-02-06 19:00:35,689 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:35,689 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:35,691 INFO L229 MonitoredProcess]: Starting monitored process 60 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:35,692 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Waiting until timeout for monitored process [2025-02-06 19:00:35,693 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:00:35,693 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:00:35,693 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:00:35,693 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(fact_#in~n) = 1*fact_#in~n Supporting invariants [] [2025-02-06 19:00:35,701 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Ended with exit code 0 [2025-02-06 19:00:35,701 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:00:35,709 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:35,717 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 11 statements into 1 equivalence classes. [2025-02-06 19:00:35,723 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 11 of 11 statements. [2025-02-06 19:00:35,723 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:35,723 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:35,724 INFO L256 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 6 conjuncts are in the unsatisfiable core [2025-02-06 19:00:35,725 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:35,738 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-06 19:00:35,741 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-06 19:00:35,741 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:35,741 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:35,741 INFO L256 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjuncts are in the unsatisfiable core [2025-02-06 19:00:35,741 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:35,764 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 19:00:35,764 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2025-02-06 19:00:35,764 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 507 states and 734 transitions. cyclomatic complexity: 244 Second operand has 4 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-02-06 19:00:35,783 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:35,788 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:35,813 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 507 states and 734 transitions. cyclomatic complexity: 244. Second operand has 4 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 877 states and 1280 transitions. Complement of second has 17 states. [2025-02-06 19:00:35,813 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 1 stem states 3 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:35,814 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-02-06 19:00:35,814 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 36 transitions. [2025-02-06 19:00:35,814 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 36 transitions. Stem has 11 letters. Loop has 3 letters. [2025-02-06 19:00:35,814 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:35,814 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 36 transitions. Stem has 14 letters. Loop has 3 letters. [2025-02-06 19:00:35,814 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:35,814 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 36 transitions. Stem has 11 letters. Loop has 6 letters. [2025-02-06 19:00:35,814 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:35,814 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 877 states and 1280 transitions. [2025-02-06 19:00:35,821 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 66 [2025-02-06 19:00:35,828 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 877 states to 798 states and 1194 transitions. [2025-02-06 19:00:35,828 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 168 [2025-02-06 19:00:35,828 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 172 [2025-02-06 19:00:35,828 INFO L73 IsDeterministic]: Start isDeterministic. Operand 798 states and 1194 transitions. [2025-02-06 19:00:35,829 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:35,829 INFO L218 hiAutomatonCegarLoop]: Abstraction has 798 states and 1194 transitions. [2025-02-06 19:00:35,829 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 798 states and 1194 transitions. [2025-02-06 19:00:35,841 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 798 to 782. [2025-02-06 19:00:35,842 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 782 states, 492 states have (on average 1.2113821138211383) internal successors, (596), 525 states have internal predecessors, (596), 186 states have call successors, (186), 90 states have call predecessors, (186), 104 states have return successors, (380), 166 states have call predecessors, (380), 183 states have call successors, (380) [2025-02-06 19:00:35,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 782 states to 782 states and 1162 transitions. [2025-02-06 19:00:35,846 INFO L240 hiAutomatonCegarLoop]: Abstraction has 782 states and 1162 transitions. [2025-02-06 19:00:35,846 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:35,846 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-02-06 19:00:35,846 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2025-02-06 19:00:35,846 INFO L87 Difference]: Start difference. First operand 782 states and 1162 transitions. Second operand has 6 states, 4 states have (on average 2.25) internal successors, (9), 5 states have internal predecessors, (9), 2 states have call successors, (2), 2 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-02-06 19:00:35,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:35,895 INFO L93 Difference]: Finished difference Result 782 states and 1161 transitions. [2025-02-06 19:00:35,895 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 782 states and 1161 transitions. [2025-02-06 19:00:35,901 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 66 [2025-02-06 19:00:35,906 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 782 states to 782 states and 1161 transitions. [2025-02-06 19:00:35,906 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 172 [2025-02-06 19:00:35,906 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 172 [2025-02-06 19:00:35,907 INFO L73 IsDeterministic]: Start isDeterministic. Operand 782 states and 1161 transitions. [2025-02-06 19:00:35,907 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:35,907 INFO L218 hiAutomatonCegarLoop]: Abstraction has 782 states and 1161 transitions. [2025-02-06 19:00:35,907 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 782 states and 1161 transitions. [2025-02-06 19:00:35,918 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 782 to 782. [2025-02-06 19:00:35,919 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 782 states, 492 states have (on average 1.2093495934959348) internal successors, (595), 525 states have internal predecessors, (595), 186 states have call successors, (186), 90 states have call predecessors, (186), 104 states have return successors, (380), 166 states have call predecessors, (380), 183 states have call successors, (380) [2025-02-06 19:00:35,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 782 states to 782 states and 1161 transitions. [2025-02-06 19:00:35,923 INFO L240 hiAutomatonCegarLoop]: Abstraction has 782 states and 1161 transitions. [2025-02-06 19:00:35,925 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-02-06 19:00:35,925 INFO L432 stractBuchiCegarLoop]: Abstraction has 782 states and 1161 transitions. [2025-02-06 19:00:35,925 INFO L338 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2025-02-06 19:00:35,925 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 782 states and 1161 transitions. [2025-02-06 19:00:35,928 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 66 [2025-02-06 19:00:35,928 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:35,928 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:35,932 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:35,932 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [12, 12, 9, 9, 9, 9, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:35,933 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" [2025-02-06 19:00:35,933 INFO L754 eck$LassoCheckResult]: Loop: "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" [2025-02-06 19:00:35,933 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:35,933 INFO L85 PathProgramCache]: Analyzing trace with hash 1480750595, now seen corresponding path program 2 times [2025-02-06 19:00:35,933 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:35,933 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1280634672] [2025-02-06 19:00:35,933 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:35,934 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:35,936 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 32 statements into 2 equivalence classes. [2025-02-06 19:00:35,943 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 32 of 32 statements. [2025-02-06 19:00:35,943 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:35,943 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:35,999 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 9 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2025-02-06 19:00:35,999 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:35,999 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1280634672] [2025-02-06 19:00:35,999 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1280634672] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:00:35,999 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [744530586] [2025-02-06 19:00:35,999 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:35,999 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:35,999 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:36,001 INFO L229 MonitoredProcess]: Starting monitored process 61 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:36,003 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (61)] Waiting until timeout for monitored process [2025-02-06 19:00:36,024 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 32 statements into 2 equivalence classes. [2025-02-06 19:00:36,031 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 32 of 32 statements. [2025-02-06 19:00:36,032 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:36,032 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:36,032 INFO L256 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 9 conjuncts are in the unsatisfiable core [2025-02-06 19:00:36,033 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:36,067 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 9 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2025-02-06 19:00:36,067 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:00:36,126 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 9 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2025-02-06 19:00:36,126 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [744530586] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:00:36,126 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:00:36,126 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 10 [2025-02-06 19:00:36,126 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [807543448] [2025-02-06 19:00:36,126 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:00:36,126 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:00:36,126 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:36,126 INFO L85 PathProgramCache]: Analyzing trace with hash -1942084370, now seen corresponding path program 2 times [2025-02-06 19:00:36,126 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:36,127 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1483581419] [2025-02-06 19:00:36,127 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:36,127 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:36,132 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 74 statements into 2 equivalence classes. [2025-02-06 19:00:36,137 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 74 of 74 statements. [2025-02-06 19:00:36,137 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:36,137 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:36,384 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 31 proven. 206 refuted. 0 times theorem prover too weak. 99 trivial. 0 not checked. [2025-02-06 19:00:36,384 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:36,384 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1483581419] [2025-02-06 19:00:36,385 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1483581419] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:00:36,385 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [733461541] [2025-02-06 19:00:36,385 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:36,385 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:36,385 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:36,387 INFO L229 MonitoredProcess]: Starting monitored process 62 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:36,389 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (62)] Waiting until timeout for monitored process [2025-02-06 19:00:36,415 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 74 statements into 2 equivalence classes. [2025-02-06 19:00:36,430 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 74 of 74 statements. [2025-02-06 19:00:36,430 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:36,430 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:36,431 INFO L256 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 21 conjuncts are in the unsatisfiable core [2025-02-06 19:00:36,433 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:36,496 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 179 proven. 86 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2025-02-06 19:00:36,496 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:00:37,068 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 15 proven. 219 refuted. 0 times theorem prover too weak. 102 trivial. 0 not checked. [2025-02-06 19:00:37,068 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [733461541] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:00:37,068 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:00:37,068 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 13, 18] total 27 [2025-02-06 19:00:37,068 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [714321699] [2025-02-06 19:00:37,068 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:00:37,068 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:00:37,068 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:37,069 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2025-02-06 19:00:37,069 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2025-02-06 19:00:37,069 INFO L87 Difference]: Start difference. First operand 782 states and 1161 transitions. cyclomatic complexity: 410 Second operand has 10 states, 8 states have (on average 2.875) internal successors, (23), 10 states have internal predecessors, (23), 3 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2025-02-06 19:00:37,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:37,230 INFO L93 Difference]: Finished difference Result 850 states and 1300 transitions. [2025-02-06 19:00:37,230 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 850 states and 1300 transitions. [2025-02-06 19:00:37,238 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 94 [2025-02-06 19:00:37,244 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 850 states to 840 states and 1280 transitions. [2025-02-06 19:00:37,244 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 202 [2025-02-06 19:00:37,245 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 202 [2025-02-06 19:00:37,245 INFO L73 IsDeterministic]: Start isDeterministic. Operand 840 states and 1280 transitions. [2025-02-06 19:00:37,245 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:37,245 INFO L218 hiAutomatonCegarLoop]: Abstraction has 840 states and 1280 transitions. [2025-02-06 19:00:37,245 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 840 states and 1280 transitions. [2025-02-06 19:00:37,258 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 840 to 832. [2025-02-06 19:00:37,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 832 states, 519 states have (on average 1.2023121387283238) internal successors, (624), 555 states have internal predecessors, (624), 206 states have call successors, (206), 88 states have call predecessors, (206), 107 states have return successors, (439), 188 states have call predecessors, (439), 203 states have call successors, (439) [2025-02-06 19:00:37,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 832 states to 832 states and 1269 transitions. [2025-02-06 19:00:37,262 INFO L240 hiAutomatonCegarLoop]: Abstraction has 832 states and 1269 transitions. [2025-02-06 19:00:37,263 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-02-06 19:00:37,265 INFO L432 stractBuchiCegarLoop]: Abstraction has 832 states and 1269 transitions. [2025-02-06 19:00:37,265 INFO L338 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2025-02-06 19:00:37,265 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 832 states and 1269 transitions. [2025-02-06 19:00:37,269 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 94 [2025-02-06 19:00:37,270 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:37,270 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:37,270 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:37,270 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:37,271 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" [2025-02-06 19:00:37,271 INFO L754 eck$LassoCheckResult]: Loop: "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" [2025-02-06 19:00:37,271 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:37,271 INFO L85 PathProgramCache]: Analyzing trace with hash -1005543025, now seen corresponding path program 3 times [2025-02-06 19:00:37,271 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:37,271 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [513852761] [2025-02-06 19:00:37,271 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:00:37,271 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:37,275 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 32 statements into 5 equivalence classes. [2025-02-06 19:00:37,286 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) and asserted 32 of 32 statements. [2025-02-06 19:00:37,286 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2025-02-06 19:00:37,286 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:37,346 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2025-02-06 19:00:37,346 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:37,346 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [513852761] [2025-02-06 19:00:37,346 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [513852761] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:00:37,346 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [127969150] [2025-02-06 19:00:37,346 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:00:37,346 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:37,347 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:37,349 INFO L229 MonitoredProcess]: Starting monitored process 63 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:37,370 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (63)] Waiting until timeout for monitored process [2025-02-06 19:00:37,406 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 32 statements into 5 equivalence classes. [2025-02-06 19:00:37,417 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) and asserted 32 of 32 statements. [2025-02-06 19:00:37,417 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2025-02-06 19:00:37,417 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:37,418 INFO L256 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 6 conjuncts are in the unsatisfiable core [2025-02-06 19:00:37,419 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:37,444 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 18 proven. 1 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2025-02-06 19:00:37,445 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:00:37,493 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2025-02-06 19:00:37,493 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [127969150] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:00:37,493 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:00:37,494 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 11 [2025-02-06 19:00:37,494 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1701373419] [2025-02-06 19:00:37,494 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:00:37,494 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:00:37,494 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:37,494 INFO L85 PathProgramCache]: Analyzing trace with hash 408904750, now seen corresponding path program 3 times [2025-02-06 19:00:37,494 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:37,494 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1617239293] [2025-02-06 19:00:37,494 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:00:37,494 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:37,496 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 38 statements into 7 equivalence classes. [2025-02-06 19:00:37,498 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) and asserted 15 of 38 statements. [2025-02-06 19:00:37,498 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2025-02-06 19:00:37,498 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:37,527 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 15 proven. 0 refuted. 0 times theorem prover too weak. 51 trivial. 0 not checked. [2025-02-06 19:00:37,528 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:37,528 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1617239293] [2025-02-06 19:00:37,528 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1617239293] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 19:00:37,528 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 19:00:37,528 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-02-06 19:00:37,528 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1569148292] [2025-02-06 19:00:37,528 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 19:00:37,528 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:00:37,528 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:37,529 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-02-06 19:00:37,529 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=81, Unknown=0, NotChecked=0, Total=110 [2025-02-06 19:00:37,529 INFO L87 Difference]: Start difference. First operand 832 states and 1269 transitions. cyclomatic complexity: 470 Second operand has 11 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 11 states have internal predecessors, (29), 5 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2025-02-06 19:00:37,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:37,631 INFO L93 Difference]: Finished difference Result 884 states and 1362 transitions. [2025-02-06 19:00:37,631 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 884 states and 1362 transitions. [2025-02-06 19:00:37,636 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 101 [2025-02-06 19:00:37,642 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 884 states to 878 states and 1352 transitions. [2025-02-06 19:00:37,642 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 218 [2025-02-06 19:00:37,643 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 218 [2025-02-06 19:00:37,643 INFO L73 IsDeterministic]: Start isDeterministic. Operand 878 states and 1352 transitions. [2025-02-06 19:00:37,643 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:37,643 INFO L218 hiAutomatonCegarLoop]: Abstraction has 878 states and 1352 transitions. [2025-02-06 19:00:37,643 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 878 states and 1352 transitions. [2025-02-06 19:00:37,656 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 878 to 842. [2025-02-06 19:00:37,657 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 842 states, 517 states have (on average 1.1992263056092842) internal successors, (620), 557 states have internal predecessors, (620), 218 states have call successors, (218), 88 states have call predecessors, (218), 107 states have return successors, (455), 196 states have call predecessors, (455), 215 states have call successors, (455) [2025-02-06 19:00:37,660 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 842 states to 842 states and 1293 transitions. [2025-02-06 19:00:37,660 INFO L240 hiAutomatonCegarLoop]: Abstraction has 842 states and 1293 transitions. [2025-02-06 19:00:37,661 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-02-06 19:00:37,661 INFO L432 stractBuchiCegarLoop]: Abstraction has 842 states and 1293 transitions. [2025-02-06 19:00:37,661 INFO L338 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2025-02-06 19:00:37,661 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 842 states and 1293 transitions. [2025-02-06 19:00:37,665 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 96 [2025-02-06 19:00:37,665 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:37,665 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:37,665 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:37,665 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2025-02-06 19:00:37,665 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< [2025-02-06 19:00:37,665 INFO L754 eck$LassoCheckResult]: Loop: "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< [2025-02-06 19:00:37,666 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:37,666 INFO L85 PathProgramCache]: Analyzing trace with hash -1011154301, now seen corresponding path program 1 times [2025-02-06 19:00:37,666 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:37,666 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [77304562] [2025-02-06 19:00:37,666 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:37,666 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:37,670 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 42 statements into 1 equivalence classes. [2025-02-06 19:00:37,672 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 42 of 42 statements. [2025-02-06 19:00:37,672 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:37,672 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:37,716 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 42 trivial. 0 not checked. [2025-02-06 19:00:37,717 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:37,717 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [77304562] [2025-02-06 19:00:37,717 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [77304562] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 19:00:37,717 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 19:00:37,717 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2025-02-06 19:00:37,717 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [800446060] [2025-02-06 19:00:37,717 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 19:00:37,717 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:00:37,717 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:37,717 INFO L85 PathProgramCache]: Analyzing trace with hash 33769, now seen corresponding path program 2 times [2025-02-06 19:00:37,717 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:37,717 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [981523106] [2025-02-06 19:00:37,717 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:37,718 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:37,719 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 3 statements into 1 equivalence classes. [2025-02-06 19:00:37,719 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-06 19:00:37,719 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-02-06 19:00:37,719 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:37,719 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:37,719 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-06 19:00:37,720 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-06 19:00:37,720 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:37,720 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:37,720 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:37,740 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:37,740 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:37,741 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:37,741 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:37,741 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:00:37,741 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,741 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:37,741 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:37,741 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration10_Loop [2025-02-06 19:00:37,741 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:37,741 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:37,741 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:37,743 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:37,744 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:37,748 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:37,763 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:37,764 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:00:37,764 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,764 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:37,767 INFO L229 MonitoredProcess]: Starting monitored process 64 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:37,769 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Waiting until timeout for monitored process [2025-02-06 19:00:37,770 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:37,770 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:37,782 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:37,782 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_~n=0} Honda state: {fact_~n=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:37,788 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:37,788 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,788 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:37,790 INFO L229 MonitoredProcess]: Starting monitored process 65 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:37,791 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Waiting until timeout for monitored process [2025-02-06 19:00:37,792 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:37,792 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:37,805 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:37,805 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {fact_#res=0} Honda state: {fact_#res=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:37,811 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:37,811 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,811 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:37,813 INFO L229 MonitoredProcess]: Starting monitored process 66 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:37,817 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Waiting until timeout for monitored process [2025-02-06 19:00:37,817 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:37,817 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:37,833 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:37,834 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,834 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:37,836 INFO L229 MonitoredProcess]: Starting monitored process 67 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:37,837 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Waiting until timeout for monitored process [2025-02-06 19:00:37,839 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:00:37,839 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:37,862 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:00:37,866 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Ended with exit code 0 [2025-02-06 19:00:37,867 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:37,867 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:37,867 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:37,867 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:37,867 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:00:37,867 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,867 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:37,867 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:37,867 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration10_Loop [2025-02-06 19:00:37,867 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:37,867 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:37,867 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:37,870 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:37,871 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:37,872 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:37,891 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:37,891 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:00:37,891 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,891 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:37,894 INFO L229 MonitoredProcess]: Starting monitored process 68 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:37,895 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Waiting until timeout for monitored process [2025-02-06 19:00:37,896 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:37,906 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:37,906 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:37,906 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:37,906 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:37,906 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:37,907 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:37,907 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:37,908 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:37,917 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Ended with exit code 0 [2025-02-06 19:00:37,917 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,917 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:37,919 INFO L229 MonitoredProcess]: Starting monitored process 69 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:37,921 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Waiting until timeout for monitored process [2025-02-06 19:00:37,922 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:37,932 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:37,932 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:37,932 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:37,932 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:37,932 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:37,933 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:37,933 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:37,936 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:37,942 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:37,942 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,942 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:37,945 INFO L229 MonitoredProcess]: Starting monitored process 70 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:37,947 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Waiting until timeout for monitored process [2025-02-06 19:00:37,948 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:37,958 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:37,958 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:37,958 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:37,958 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:37,958 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:37,958 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:37,959 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:37,960 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:37,965 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:37,966 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,966 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:37,969 INFO L229 MonitoredProcess]: Starting monitored process 71 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:37,970 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Waiting until timeout for monitored process [2025-02-06 19:00:37,971 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:37,980 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:37,981 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:37,981 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:37,981 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:37,981 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:37,982 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:37,982 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:37,984 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:00:37,986 INFO L443 ModelExtractionUtils]: Simplification made 2 calls to the SMT solver. [2025-02-06 19:00:37,986 INFO L444 ModelExtractionUtils]: 1 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:00:37,986 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:37,986 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:37,988 INFO L229 MonitoredProcess]: Starting monitored process 72 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:37,990 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Waiting until timeout for monitored process [2025-02-06 19:00:37,990 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:00:37,990 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:00:37,990 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:00:37,990 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(fact_#in~n) = 1*fact_#in~n Supporting invariants [] [2025-02-06 19:00:37,997 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Ended with exit code 0 [2025-02-06 19:00:37,998 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:00:38,007 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:38,018 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 42 statements into 1 equivalence classes. [2025-02-06 19:00:38,040 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 42 of 42 statements. [2025-02-06 19:00:38,040 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:38,040 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:38,041 INFO L256 TraceCheckSpWp]: Trace formula consists of 304 conjuncts, 16 conjuncts are in the unsatisfiable core [2025-02-06 19:00:38,042 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:38,117 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Ended with exit code 0 [2025-02-06 19:00:38,199 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-06 19:00:38,203 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-06 19:00:38,203 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:38,203 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:38,203 INFO L256 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjuncts are in the unsatisfiable core [2025-02-06 19:00:38,204 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:38,221 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 19:00:38,221 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 3 loop predicates [2025-02-06 19:00:38,221 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 842 states and 1293 transitions. cyclomatic complexity: 484 Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2025-02-06 19:00:38,305 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 842 states and 1293 transitions. cyclomatic complexity: 484. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Result 935 states and 1402 transitions. Complement of second has 17 states. [2025-02-06 19:00:38,305 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 2 stem states 3 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:38,306 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2025-02-06 19:00:38,306 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2025-02-06 19:00:38,306 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 42 letters. Loop has 3 letters. [2025-02-06 19:00:38,308 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:38,308 INFO L689 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2025-02-06 19:00:38,318 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:38,329 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 42 statements into 1 equivalence classes. [2025-02-06 19:00:38,357 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 42 of 42 statements. [2025-02-06 19:00:38,357 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:38,357 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:38,358 INFO L256 TraceCheckSpWp]: Trace formula consists of 304 conjuncts, 16 conjuncts are in the unsatisfiable core [2025-02-06 19:00:38,359 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:38,521 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-06 19:00:38,524 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-06 19:00:38,524 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:38,524 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:38,524 INFO L256 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjuncts are in the unsatisfiable core [2025-02-06 19:00:38,525 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:38,542 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 19:00:38,542 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 3 loop predicates [2025-02-06 19:00:38,542 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 842 states and 1293 transitions. cyclomatic complexity: 484 Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2025-02-06 19:00:38,604 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 842 states and 1293 transitions. cyclomatic complexity: 484. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Result 935 states and 1402 transitions. Complement of second has 17 states. [2025-02-06 19:00:38,605 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 2 stem states 3 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:38,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2025-02-06 19:00:38,606 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2025-02-06 19:00:38,606 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 42 letters. Loop has 3 letters. [2025-02-06 19:00:38,606 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:38,606 INFO L689 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2025-02-06 19:00:38,613 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:38,626 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 42 statements into 1 equivalence classes. [2025-02-06 19:00:38,649 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 42 of 42 statements. [2025-02-06 19:00:38,649 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:38,649 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:38,650 INFO L256 TraceCheckSpWp]: Trace formula consists of 304 conjuncts, 16 conjuncts are in the unsatisfiable core [2025-02-06 19:00:38,652 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:38,799 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-02-06 19:00:38,801 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-02-06 19:00:38,802 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:38,802 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:38,802 INFO L256 TraceCheckSpWp]: Trace formula consists of 37 conjuncts, 7 conjuncts are in the unsatisfiable core [2025-02-06 19:00:38,802 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:38,819 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-06 19:00:38,819 INFO L141 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.2 stem predicates 3 loop predicates [2025-02-06 19:00:38,819 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 842 states and 1293 transitions. cyclomatic complexity: 484 Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2025-02-06 19:00:38,895 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 842 states and 1293 transitions. cyclomatic complexity: 484. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Result 1087 states and 1570 transitions. Complement of second has 19 states. [2025-02-06 19:00:38,896 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 2 stem states 3 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:38,896 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 3 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2025-02-06 19:00:38,896 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2025-02-06 19:00:38,896 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 39 transitions. Stem has 42 letters. Loop has 3 letters. [2025-02-06 19:00:38,897 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:38,897 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 39 transitions. Stem has 45 letters. Loop has 3 letters. [2025-02-06 19:00:38,897 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:38,897 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 39 transitions. Stem has 42 letters. Loop has 6 letters. [2025-02-06 19:00:38,897 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:38,897 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1087 states and 1570 transitions. [2025-02-06 19:00:38,904 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 90 [2025-02-06 19:00:38,910 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1087 states to 891 states and 1367 transitions. [2025-02-06 19:00:38,910 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 179 [2025-02-06 19:00:38,910 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 186 [2025-02-06 19:00:38,911 INFO L73 IsDeterministic]: Start isDeterministic. Operand 891 states and 1367 transitions. [2025-02-06 19:00:38,911 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:38,911 INFO L218 hiAutomatonCegarLoop]: Abstraction has 891 states and 1367 transitions. [2025-02-06 19:00:38,911 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 891 states and 1367 transitions. [2025-02-06 19:00:38,937 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 891 to 769. [2025-02-06 19:00:38,938 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 769 states, 485 states have (on average 1.1917525773195876) internal successors, (578), 498 states have internal predecessors, (578), 188 states have call successors, (188), 78 states have call predecessors, (188), 96 states have return successors, (400), 192 states have call predecessors, (400), 188 states have call successors, (400) [2025-02-06 19:00:38,941 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 769 states to 769 states and 1166 transitions. [2025-02-06 19:00:38,942 INFO L240 hiAutomatonCegarLoop]: Abstraction has 769 states and 1166 transitions. [2025-02-06 19:00:38,942 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:38,942 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-02-06 19:00:38,942 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2025-02-06 19:00:38,942 INFO L87 Difference]: Start difference. First operand 769 states and 1166 transitions. Second operand has 6 states, 4 states have (on average 4.5) internal successors, (18), 5 states have internal predecessors, (18), 4 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2025-02-06 19:00:38,995 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:38,996 INFO L93 Difference]: Finished difference Result 769 states and 1105 transitions. [2025-02-06 19:00:38,996 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 769 states and 1105 transitions. [2025-02-06 19:00:39,000 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 90 [2025-02-06 19:00:39,004 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 769 states to 733 states and 1067 transitions. [2025-02-06 19:00:39,004 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 176 [2025-02-06 19:00:39,005 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 176 [2025-02-06 19:00:39,005 INFO L73 IsDeterministic]: Start isDeterministic. Operand 733 states and 1067 transitions. [2025-02-06 19:00:39,005 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:39,005 INFO L218 hiAutomatonCegarLoop]: Abstraction has 733 states and 1067 transitions. [2025-02-06 19:00:39,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 733 states and 1067 transitions. [2025-02-06 19:00:39,014 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 733 to 729. [2025-02-06 19:00:39,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 729 states, 467 states have (on average 1.171306209850107) internal successors, (547), 484 states have internal predecessors, (547), 164 states have call successors, (164), 76 states have call predecessors, (164), 98 states have return successors, (348), 168 states have call predecessors, (348), 164 states have call successors, (348) [2025-02-06 19:00:39,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 729 states to 729 states and 1059 transitions. [2025-02-06 19:00:39,018 INFO L240 hiAutomatonCegarLoop]: Abstraction has 729 states and 1059 transitions. [2025-02-06 19:00:39,018 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-02-06 19:00:39,018 INFO L432 stractBuchiCegarLoop]: Abstraction has 729 states and 1059 transitions. [2025-02-06 19:00:39,018 INFO L338 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2025-02-06 19:00:39,019 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 729 states and 1059 transitions. [2025-02-06 19:00:39,021 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 90 [2025-02-06 19:00:39,021 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:39,021 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:39,022 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 6, 4, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:39,022 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [5, 5, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:39,022 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" [2025-02-06 19:00:39,022 INFO L754 eck$LassoCheckResult]: Loop: "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" [2025-02-06 19:00:39,023 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:39,023 INFO L85 PathProgramCache]: Analyzing trace with hash 555314674, now seen corresponding path program 1 times [2025-02-06 19:00:39,023 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:39,023 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [844758480] [2025-02-06 19:00:39,023 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:39,023 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:39,026 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-02-06 19:00:39,028 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-02-06 19:00:39,028 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:39,028 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:39,079 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 25 proven. 5 refuted. 0 times theorem prover too weak. 34 trivial. 0 not checked. [2025-02-06 19:00:39,079 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:39,079 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [844758480] [2025-02-06 19:00:39,079 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [844758480] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:00:39,079 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [86470765] [2025-02-06 19:00:39,079 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:39,079 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:39,080 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:39,081 INFO L229 MonitoredProcess]: Starting monitored process 73 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:39,083 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (73)] Waiting until timeout for monitored process [2025-02-06 19:00:39,114 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-02-06 19:00:39,123 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-02-06 19:00:39,123 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:39,123 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:39,124 INFO L256 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 9 conjuncts are in the unsatisfiable core [2025-02-06 19:00:39,125 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:39,148 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 25 proven. 5 refuted. 0 times theorem prover too weak. 34 trivial. 0 not checked. [2025-02-06 19:00:39,148 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:00:39,259 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 25 proven. 6 refuted. 0 times theorem prover too weak. 33 trivial. 0 not checked. [2025-02-06 19:00:39,259 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [86470765] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:00:39,259 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:00:39,259 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 8] total 9 [2025-02-06 19:00:39,259 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1380191455] [2025-02-06 19:00:39,260 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:00:39,260 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:00:39,260 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:39,260 INFO L85 PathProgramCache]: Analyzing trace with hash -513782124, now seen corresponding path program 4 times [2025-02-06 19:00:39,260 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:39,260 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [365409235] [2025-02-06 19:00:39,260 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-02-06 19:00:39,260 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:39,265 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 32 statements into 2 equivalence classes. [2025-02-06 19:00:39,272 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 32 of 32 statements. [2025-02-06 19:00:39,272 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-02-06 19:00:39,272 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:39,273 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1789993685] [2025-02-06 19:00:39,273 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-02-06 19:00:39,273 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:39,273 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:39,276 INFO L229 MonitoredProcess]: Starting monitored process 74 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:39,277 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (74)] Waiting until timeout for monitored process [2025-02-06 19:00:39,310 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 32 statements into 2 equivalence classes. [2025-02-06 19:00:39,317 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 32 of 32 statements. [2025-02-06 19:00:39,318 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-02-06 19:00:39,318 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:39,318 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:39,322 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 32 statements into 1 equivalence classes. [2025-02-06 19:00:39,326 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 32 of 32 statements. [2025-02-06 19:00:39,326 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:39,326 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:39,333 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:39,493 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:39,493 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:39,493 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:39,493 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:39,493 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:00:39,493 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:39,493 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:39,493 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:39,493 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration11_Loop [2025-02-06 19:00:39,493 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:39,493 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:39,494 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,495 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,499 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,501 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,502 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,509 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,511 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,512 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,513 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,514 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,552 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:39,552 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:00:39,553 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:39,553 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:39,555 INFO L229 MonitoredProcess]: Starting monitored process 75 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:39,555 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Waiting until timeout for monitored process [2025-02-06 19:00:39,556 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:39,556 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:39,566 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:39,567 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post9#1=0} Honda state: {ULTIMATE.start_main_#t~post9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:39,572 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:39,572 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:39,572 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:39,574 INFO L229 MonitoredProcess]: Starting monitored process 76 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:39,575 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Waiting until timeout for monitored process [2025-02-06 19:00:39,576 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:39,576 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:39,592 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:39,592 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:39,593 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:39,594 INFO L229 MonitoredProcess]: Starting monitored process 77 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:39,596 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Waiting until timeout for monitored process [2025-02-06 19:00:39,597 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:00:39,597 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:39,608 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:00:39,615 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:39,615 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:39,615 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:39,615 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:39,615 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:39,616 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:00:39,616 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:39,616 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:39,616 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:39,616 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration11_Loop [2025-02-06 19:00:39,616 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:39,616 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:39,616 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,618 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,622 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,624 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,625 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,627 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,635 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,636 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,638 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,639 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:39,684 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:39,684 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:00:39,684 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:39,684 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:39,686 INFO L229 MonitoredProcess]: Starting monitored process 78 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:39,687 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Waiting until timeout for monitored process [2025-02-06 19:00:39,688 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:39,697 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:39,697 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:39,697 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:39,697 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:39,697 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:39,697 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:39,697 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:39,698 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:39,704 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Ended with exit code 0 [2025-02-06 19:00:39,704 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:39,704 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:39,705 INFO L229 MonitoredProcess]: Starting monitored process 79 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:39,707 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Waiting until timeout for monitored process [2025-02-06 19:00:39,707 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:39,717 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:39,717 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:39,717 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:39,717 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:39,717 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:39,718 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:39,718 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:39,719 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:00:39,720 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:00:39,720 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:00:39,721 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:39,721 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:39,731 INFO L229 MonitoredProcess]: Starting monitored process 80 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:39,731 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Waiting until timeout for monitored process [2025-02-06 19:00:39,732 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:00:39,732 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:00:39,732 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:00:39,732 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 3 Supporting invariants [] [2025-02-06 19:00:39,737 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Ended with exit code 0 [2025-02-06 19:00:39,738 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:00:39,746 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:39,760 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 44 statements into 1 equivalence classes. [2025-02-06 19:00:39,783 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 44 of 44 statements. [2025-02-06 19:00:39,783 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:39,783 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:39,786 INFO L256 TraceCheckSpWp]: Trace formula consists of 277 conjuncts, 14 conjuncts are in the unsatisfiable core [2025-02-06 19:00:39,787 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:39,955 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 32 statements into 1 equivalence classes. [2025-02-06 19:00:39,974 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 32 of 32 statements. [2025-02-06 19:00:39,974 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:39,974 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:39,975 INFO L256 TraceCheckSpWp]: Trace formula consists of 218 conjuncts, 22 conjuncts are in the unsatisfiable core [2025-02-06 19:00:39,977 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:40,106 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 18 proven. 7 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2025-02-06 19:00:40,106 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 8 loop predicates [2025-02-06 19:00:40,107 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 729 states and 1059 transitions. cyclomatic complexity: 355 Second operand has 11 states, 9 states have (on average 3.5555555555555554) internal successors, (32), 10 states have internal predecessors, (32), 6 states have call successors, (9), 2 states have call predecessors, (9), 5 states have return successors, (10), 6 states have call predecessors, (10), 6 states have call successors, (10) [2025-02-06 19:00:40,320 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 729 states and 1059 transitions. cyclomatic complexity: 355. Second operand has 11 states, 9 states have (on average 3.5555555555555554) internal successors, (32), 10 states have internal predecessors, (32), 6 states have call successors, (9), 2 states have call predecessors, (9), 5 states have return successors, (10), 6 states have call predecessors, (10), 6 states have call successors, (10) Result 1893 states and 2512 transitions. Complement of second has 59 states. [2025-02-06 19:00:40,320 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 13 states 2 stem states 10 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:40,321 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 3.5555555555555554) internal successors, (32), 10 states have internal predecessors, (32), 6 states have call successors, (9), 2 states have call predecessors, (9), 5 states have return successors, (10), 6 states have call predecessors, (10), 6 states have call successors, (10) [2025-02-06 19:00:40,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 77 transitions. [2025-02-06 19:00:40,321 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 13 states and 77 transitions. Stem has 44 letters. Loop has 32 letters. [2025-02-06 19:00:40,321 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:40,321 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 13 states and 77 transitions. Stem has 76 letters. Loop has 32 letters. [2025-02-06 19:00:40,321 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:40,321 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 13 states and 77 transitions. Stem has 44 letters. Loop has 64 letters. [2025-02-06 19:00:40,322 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:40,322 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1893 states and 2512 transitions. [2025-02-06 19:00:40,338 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 90 [2025-02-06 19:00:40,347 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1893 states to 1552 states and 2079 transitions. [2025-02-06 19:00:40,347 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 227 [2025-02-06 19:00:40,348 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 278 [2025-02-06 19:00:40,348 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1552 states and 2079 transitions. [2025-02-06 19:00:40,348 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:40,348 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1552 states and 2079 transitions. [2025-02-06 19:00:40,349 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1552 states and 2079 transitions. [2025-02-06 19:00:40,368 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1552 to 1344. [2025-02-06 19:00:40,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1344 states, 876 states have (on average 1.1484018264840183) internal successors, (1006), 909 states have internal predecessors, (1006), 251 states have call successors, (264), 159 states have call predecessors, (264), 217 states have return successors, (555), 275 states have call predecessors, (555), 251 states have call successors, (555) [2025-02-06 19:00:40,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1344 states to 1344 states and 1825 transitions. [2025-02-06 19:00:40,374 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1344 states and 1825 transitions. [2025-02-06 19:00:40,374 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:40,374 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2025-02-06 19:00:40,374 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2025-02-06 19:00:40,374 INFO L87 Difference]: Start difference. First operand 1344 states and 1825 transitions. Second operand has 10 states, 8 states have (on average 3.25) internal successors, (26), 9 states have internal predecessors, (26), 5 states have call successors, (7), 1 states have call predecessors, (7), 3 states have return successors, (7), 4 states have call predecessors, (7), 5 states have call successors, (7) [2025-02-06 19:00:40,555 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Ended with exit code 0 [2025-02-06 19:00:40,556 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:40,556 INFO L93 Difference]: Finished difference Result 1668 states and 2392 transitions. [2025-02-06 19:00:40,556 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1668 states and 2392 transitions. [2025-02-06 19:00:40,566 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 111 [2025-02-06 19:00:40,576 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1668 states to 1664 states and 2386 transitions. [2025-02-06 19:00:40,577 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 331 [2025-02-06 19:00:40,577 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 331 [2025-02-06 19:00:40,577 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1664 states and 2386 transitions. [2025-02-06 19:00:40,577 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:40,577 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1664 states and 2386 transitions. [2025-02-06 19:00:40,578 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1664 states and 2386 transitions. [2025-02-06 19:00:40,600 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1664 to 1408. [2025-02-06 19:00:40,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1408 states, 918 states have (on average 1.1525054466230937) internal successors, (1058), 955 states have internal predecessors, (1058), 273 states have call successors, (286), 159 states have call predecessors, (286), 217 states have return successors, (599), 293 states have call predecessors, (599), 273 states have call successors, (599) [2025-02-06 19:00:40,606 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1408 states to 1408 states and 1943 transitions. [2025-02-06 19:00:40,606 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1408 states and 1943 transitions. [2025-02-06 19:00:40,606 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-02-06 19:00:40,607 INFO L432 stractBuchiCegarLoop]: Abstraction has 1408 states and 1943 transitions. [2025-02-06 19:00:40,607 INFO L338 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2025-02-06 19:00:40,607 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1408 states and 1943 transitions. [2025-02-06 19:00:40,612 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 97 [2025-02-06 19:00:40,612 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:40,612 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:40,612 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:40,612 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [9, 9, 6, 6, 6, 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:40,613 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:00:40,613 INFO L754 eck$LassoCheckResult]: Loop: "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:00:40,613 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:40,613 INFO L85 PathProgramCache]: Analyzing trace with hash 2033083208, now seen corresponding path program 1 times [2025-02-06 19:00:40,613 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:40,613 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [339370815] [2025-02-06 19:00:40,613 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:40,613 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:40,616 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 48 statements into 1 equivalence classes. [2025-02-06 19:00:40,618 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 48 of 48 statements. [2025-02-06 19:00:40,618 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:40,618 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:40,656 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 11 proven. 9 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2025-02-06 19:00:40,656 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:40,656 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [339370815] [2025-02-06 19:00:40,656 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [339370815] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:00:40,656 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [276435695] [2025-02-06 19:00:40,656 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:40,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:40,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:40,658 INFO L229 MonitoredProcess]: Starting monitored process 81 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:40,659 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (81)] Waiting until timeout for monitored process [2025-02-06 19:00:40,689 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 48 statements into 1 equivalence classes. [2025-02-06 19:00:40,698 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 48 of 48 statements. [2025-02-06 19:00:40,698 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:40,698 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:40,699 INFO L256 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 7 conjuncts are in the unsatisfiable core [2025-02-06 19:00:40,700 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:40,717 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 59 proven. 0 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2025-02-06 19:00:40,717 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-06 19:00:40,717 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [276435695] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 19:00:40,717 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-02-06 19:00:40,717 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [7] total 7 [2025-02-06 19:00:40,717 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [315864176] [2025-02-06 19:00:40,717 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 19:00:40,717 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:00:40,718 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:40,718 INFO L85 PathProgramCache]: Analyzing trace with hash 581672008, now seen corresponding path program 5 times [2025-02-06 19:00:40,718 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:40,718 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1497906880] [2025-02-06 19:00:40,718 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-02-06 19:00:40,718 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:40,722 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 56 statements into 11 equivalence classes. [2025-02-06 19:00:40,730 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) and asserted 56 of 56 statements. [2025-02-06 19:00:40,732 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) [2025-02-06 19:00:40,732 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:40,733 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1587331535] [2025-02-06 19:00:40,733 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-02-06 19:00:40,733 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:40,733 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:40,735 INFO L229 MonitoredProcess]: Starting monitored process 82 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:40,737 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (82)] Waiting until timeout for monitored process [2025-02-06 19:00:40,768 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 56 statements into 11 equivalence classes. [2025-02-06 19:00:40,783 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) and asserted 56 of 56 statements. [2025-02-06 19:00:40,783 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) [2025-02-06 19:00:40,783 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:40,783 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:40,789 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 56 statements into 1 equivalence classes. [2025-02-06 19:00:40,795 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 56 of 56 statements. [2025-02-06 19:00:40,795 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:40,795 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:40,801 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:41,094 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:41,094 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:41,094 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:41,094 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:41,094 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:00:41,094 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,094 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:41,094 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:41,094 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration12_Loop [2025-02-06 19:00:41,094 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:41,094 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:41,095 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,096 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,097 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,099 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,100 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,102 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,103 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,104 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,105 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,106 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,108 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,110 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,164 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:41,164 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:00:41,164 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,164 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,169 INFO L229 MonitoredProcess]: Starting monitored process 83 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,170 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Waiting until timeout for monitored process [2025-02-06 19:00:41,171 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,171 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,182 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:41,182 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post9#1=0} Honda state: {ULTIMATE.start_main_#t~post9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:41,187 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:41,187 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,188 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,189 INFO L229 MonitoredProcess]: Starting monitored process 84 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,190 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Waiting until timeout for monitored process [2025-02-06 19:00:41,192 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,192 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,202 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:41,202 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:41,207 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:41,208 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,208 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,210 INFO L229 MonitoredProcess]: Starting monitored process 85 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,210 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Waiting until timeout for monitored process [2025-02-06 19:00:41,211 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,211 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,221 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:41,221 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_~n~0#1=0} Honda state: {ULTIMATE.start_main_~n~0#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:41,227 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Ended with exit code 0 [2025-02-06 19:00:41,227 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,227 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,229 INFO L229 MonitoredProcess]: Starting monitored process 86 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,230 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (86)] Waiting until timeout for monitored process [2025-02-06 19:00:41,230 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,230 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,241 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:41,241 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=6} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=6} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:41,246 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (86)] Ended with exit code 0 [2025-02-06 19:00:41,246 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,246 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,248 INFO L229 MonitoredProcess]: Starting monitored process 87 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,249 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (87)] Waiting until timeout for monitored process [2025-02-06 19:00:41,250 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,250 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,268 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:41,268 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_~x~0#1=3} Honda state: {ULTIMATE.start_main_~x~0#1=3} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:41,274 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (87)] Ended with exit code 0 [2025-02-06 19:00:41,274 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,274 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,276 INFO L229 MonitoredProcess]: Starting monitored process 88 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,276 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (88)] Waiting until timeout for monitored process [2025-02-06 19:00:41,277 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,277 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,288 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:41,288 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#in~n#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#in~n#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:41,293 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (88)] Ended with exit code 0 [2025-02-06 19:00:41,293 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,294 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,295 INFO L229 MonitoredProcess]: Starting monitored process 89 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,296 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (89)] Waiting until timeout for monitored process [2025-02-06 19:00:41,297 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,297 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,307 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:41,307 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=1} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:41,313 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (89)] Ended with exit code 0 [2025-02-06 19:00:41,314 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,314 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,315 INFO L229 MonitoredProcess]: Starting monitored process 90 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,316 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (90)] Waiting until timeout for monitored process [2025-02-06 19:00:41,317 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,317 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,327 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:41,328 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=6} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=6} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:41,333 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (90)] Ended with exit code 0 [2025-02-06 19:00:41,333 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,333 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,335 INFO L229 MonitoredProcess]: Starting monitored process 91 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,336 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (91)] Waiting until timeout for monitored process [2025-02-06 19:00:41,336 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,336 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,347 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:41,347 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#in~k#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#in~k#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:41,353 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (91)] Ended with exit code 0 [2025-02-06 19:00:41,353 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,353 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,355 INFO L229 MonitoredProcess]: Starting monitored process 92 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,355 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (92)] Waiting until timeout for monitored process [2025-02-06 19:00:41,356 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,356 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,367 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:41,367 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~n#1=3} Honda state: {ULTIMATE.start_binomialCoefficient_~n#1=3} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:41,372 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (92)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:41,372 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,373 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,374 INFO L229 MonitoredProcess]: Starting monitored process 93 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,375 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (93)] Waiting until timeout for monitored process [2025-02-06 19:00:41,376 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:41,376 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,398 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (93)] Ended with exit code 0 [2025-02-06 19:00:41,398 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,398 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,400 INFO L229 MonitoredProcess]: Starting monitored process 94 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,400 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (94)] Waiting until timeout for monitored process [2025-02-06 19:00:41,401 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:00:41,401 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:41,415 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:00:41,423 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (94)] Ended with exit code 0 [2025-02-06 19:00:41,423 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:41,423 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:41,423 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:41,423 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:41,423 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:00:41,423 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,423 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:41,423 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:41,423 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration12_Loop [2025-02-06 19:00:41,423 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:41,423 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:41,429 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,431 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,434 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,436 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,437 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,439 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,440 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,441 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,443 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,444 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,446 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,447 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:41,489 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:41,489 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:00:41,490 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,490 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,491 INFO L229 MonitoredProcess]: Starting monitored process 95 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,492 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (95)] Waiting until timeout for monitored process [2025-02-06 19:00:41,493 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,502 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,502 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,502 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,502 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,502 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,503 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,503 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,504 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,509 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (95)] Ended with exit code 0 [2025-02-06 19:00:41,509 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,509 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,511 INFO L229 MonitoredProcess]: Starting monitored process 96 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,511 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (96)] Waiting until timeout for monitored process [2025-02-06 19:00:41,512 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,522 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,522 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,522 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,522 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,522 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,523 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,523 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,524 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,529 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (96)] Ended with exit code 0 [2025-02-06 19:00:41,529 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,529 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,531 INFO L229 MonitoredProcess]: Starting monitored process 97 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,531 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (97)] Waiting until timeout for monitored process [2025-02-06 19:00:41,532 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,542 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,542 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,542 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,542 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,542 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,543 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,543 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,544 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,549 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (97)] Ended with exit code 0 [2025-02-06 19:00:41,550 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,550 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,551 INFO L229 MonitoredProcess]: Starting monitored process 98 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,552 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (98)] Waiting until timeout for monitored process [2025-02-06 19:00:41,553 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,563 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,563 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,563 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,564 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,564 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,564 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,564 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,565 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,570 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (98)] Ended with exit code 0 [2025-02-06 19:00:41,571 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,571 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,572 INFO L229 MonitoredProcess]: Starting monitored process 99 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,573 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (99)] Waiting until timeout for monitored process [2025-02-06 19:00:41,574 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,584 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,584 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,584 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,584 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,584 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,584 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,584 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,585 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,591 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (99)] Ended with exit code 0 [2025-02-06 19:00:41,591 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,591 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,593 INFO L229 MonitoredProcess]: Starting monitored process 100 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,594 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (100)] Waiting until timeout for monitored process [2025-02-06 19:00:41,595 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,604 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,604 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,604 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,604 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,604 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,605 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,605 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,606 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,611 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (100)] Ended with exit code 0 [2025-02-06 19:00:41,612 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,612 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,614 INFO L229 MonitoredProcess]: Starting monitored process 101 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,614 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (101)] Waiting until timeout for monitored process [2025-02-06 19:00:41,615 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,625 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,625 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,625 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,625 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,625 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,625 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,625 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,626 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,631 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (101)] Ended with exit code 0 [2025-02-06 19:00:41,632 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,632 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,634 INFO L229 MonitoredProcess]: Starting monitored process 102 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,635 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (102)] Waiting until timeout for monitored process [2025-02-06 19:00:41,635 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,644 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,645 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,645 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,645 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,645 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,645 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,645 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,646 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,652 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (102)] Ended with exit code 0 [2025-02-06 19:00:41,652 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,652 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,655 INFO L229 MonitoredProcess]: Starting monitored process 103 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,656 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (103)] Waiting until timeout for monitored process [2025-02-06 19:00:41,657 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,667 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,667 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,667 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,667 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,667 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,667 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,667 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,669 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,674 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (103)] Ended with exit code 0 [2025-02-06 19:00:41,674 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,675 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,676 INFO L229 MonitoredProcess]: Starting monitored process 104 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,677 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (104)] Waiting until timeout for monitored process [2025-02-06 19:00:41,678 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,687 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,687 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,687 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,687 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,687 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,687 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,687 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,688 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,694 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (104)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:41,694 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,694 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,696 INFO L229 MonitoredProcess]: Starting monitored process 105 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,696 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (105)] Waiting until timeout for monitored process [2025-02-06 19:00:41,698 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,707 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,707 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,707 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,707 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,707 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,708 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,708 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,709 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:41,714 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (105)] Ended with exit code 0 [2025-02-06 19:00:41,714 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,715 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,716 INFO L229 MonitoredProcess]: Starting monitored process 106 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,717 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (106)] Waiting until timeout for monitored process [2025-02-06 19:00:41,718 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:41,730 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:41,731 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:41,731 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:41,731 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:41,731 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:41,731 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:41,731 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:41,736 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:00:41,739 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:00:41,739 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:00:41,739 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:41,739 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:41,741 INFO L229 MonitoredProcess]: Starting monitored process 107 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:41,742 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (107)] Waiting until timeout for monitored process [2025-02-06 19:00:41,742 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:00:41,742 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:00:41,742 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:00:41,742 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 5 Supporting invariants [] [2025-02-06 19:00:41,748 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (106)] Ended with exit code 0 [2025-02-06 19:00:41,748 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:00:41,755 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:41,765 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 48 statements into 1 equivalence classes. [2025-02-06 19:00:41,785 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 48 of 48 statements. [2025-02-06 19:00:41,785 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:41,785 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:41,786 INFO L256 TraceCheckSpWp]: Trace formula consists of 317 conjuncts, 16 conjuncts are in the unsatisfiable core [2025-02-06 19:00:41,787 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:41,953 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 56 statements into 1 equivalence classes. [2025-02-06 19:00:41,983 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 56 of 56 statements. [2025-02-06 19:00:41,983 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:41,983 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:41,985 INFO L256 TraceCheckSpWp]: Trace formula consists of 378 conjuncts, 32 conjuncts are in the unsatisfiable core [2025-02-06 19:00:41,986 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:42,144 INFO L134 CoverageAnalysis]: Checked inductivity of 174 backedges. 0 proven. 93 refuted. 0 times theorem prover too weak. 81 trivial. 0 not checked. [2025-02-06 19:00:42,144 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 10 loop predicates [2025-02-06 19:00:42,144 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1408 states and 1943 transitions. cyclomatic complexity: 577 Second operand has 13 states, 11 states have (on average 3.272727272727273) internal successors, (36), 11 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (14), 8 states have call predecessors, (14), 6 states have call successors, (14) [2025-02-06 19:00:42,274 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (107)] Ended with exit code 0 [2025-02-06 19:00:42,442 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1408 states and 1943 transitions. cyclomatic complexity: 577. Second operand has 13 states, 11 states have (on average 3.272727272727273) internal successors, (36), 11 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (14), 8 states have call predecessors, (14), 6 states have call successors, (14) Result 3829 states and 4999 transitions. Complement of second has 71 states. [2025-02-06 19:00:42,443 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 15 states 2 stem states 12 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:42,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 3.272727272727273) internal successors, (36), 11 states have internal predecessors, (36), 6 states have call successors, (12), 2 states have call predecessors, (12), 6 states have return successors, (14), 8 states have call predecessors, (14), 6 states have call successors, (14) [2025-02-06 19:00:42,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 88 transitions. [2025-02-06 19:00:42,444 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 15 states and 88 transitions. Stem has 48 letters. Loop has 56 letters. [2025-02-06 19:00:42,445 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:42,445 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 15 states and 88 transitions. Stem has 104 letters. Loop has 56 letters. [2025-02-06 19:00:42,445 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:42,446 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 15 states and 88 transitions. Stem has 48 letters. Loop has 112 letters. [2025-02-06 19:00:42,446 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:42,447 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3829 states and 4999 transitions. [2025-02-06 19:00:42,466 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 97 [2025-02-06 19:00:42,481 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3829 states to 2836 states and 3736 transitions. [2025-02-06 19:00:42,481 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 370 [2025-02-06 19:00:42,482 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 374 [2025-02-06 19:00:42,482 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2836 states and 3736 transitions. [2025-02-06 19:00:42,483 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:42,483 INFO L218 hiAutomatonCegarLoop]: Abstraction has 2836 states and 3736 transitions. [2025-02-06 19:00:42,484 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2836 states and 3736 transitions. [2025-02-06 19:00:42,518 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2836 to 2171. [2025-02-06 19:00:42,521 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2171 states, 1421 states have (on average 1.1463757916959887) internal successors, (1629), 1468 states have internal predecessors, (1629), 377 states have call successors, (411), 275 states have call predecessors, (411), 373 states have return successors, (854), 427 states have call predecessors, (854), 377 states have call successors, (854) [2025-02-06 19:00:42,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2171 states to 2171 states and 2894 transitions. [2025-02-06 19:00:42,527 INFO L240 hiAutomatonCegarLoop]: Abstraction has 2171 states and 2894 transitions. [2025-02-06 19:00:42,527 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:42,527 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2025-02-06 19:00:42,527 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2025-02-06 19:00:42,527 INFO L87 Difference]: Start difference. First operand 2171 states and 2894 transitions. Second operand has 7 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2025-02-06 19:00:42,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:42,618 INFO L93 Difference]: Finished difference Result 1342 states and 1746 transitions. [2025-02-06 19:00:42,618 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1342 states and 1746 transitions. [2025-02-06 19:00:42,623 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 76 [2025-02-06 19:00:42,630 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1342 states to 1050 states and 1396 transitions. [2025-02-06 19:00:42,630 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 196 [2025-02-06 19:00:42,631 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 216 [2025-02-06 19:00:42,631 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1050 states and 1396 transitions. [2025-02-06 19:00:42,631 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:42,631 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1050 states and 1396 transitions. [2025-02-06 19:00:42,632 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1050 states and 1396 transitions. [2025-02-06 19:00:42,644 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1050 to 1003. [2025-02-06 19:00:42,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1003 states, 649 states have (on average 1.1355932203389831) internal successors, (737), 667 states have internal predecessors, (737), 186 states have call successors, (198), 112 states have call predecessors, (198), 168 states have return successors, (414), 223 states have call predecessors, (414), 186 states have call successors, (414) [2025-02-06 19:00:42,648 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1003 states to 1003 states and 1349 transitions. [2025-02-06 19:00:42,648 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1003 states and 1349 transitions. [2025-02-06 19:00:42,648 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-02-06 19:00:42,649 INFO L432 stractBuchiCegarLoop]: Abstraction has 1003 states and 1349 transitions. [2025-02-06 19:00:42,649 INFO L338 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2025-02-06 19:00:42,649 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1003 states and 1349 transitions. [2025-02-06 19:00:42,651 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 76 [2025-02-06 19:00:42,651 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:42,651 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:42,652 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:42,652 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [11, 11, 8, 8, 8, 8, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:42,652 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" [2025-02-06 19:00:42,652 INFO L754 eck$LassoCheckResult]: Loop: "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" [2025-02-06 19:00:42,653 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:42,653 INFO L85 PathProgramCache]: Analyzing trace with hash 1218121293, now seen corresponding path program 1 times [2025-02-06 19:00:42,653 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:42,653 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1759360095] [2025-02-06 19:00:42,653 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:42,653 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:42,657 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 49 statements into 1 equivalence classes. [2025-02-06 19:00:42,660 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 49 of 49 statements. [2025-02-06 19:00:42,660 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:42,661 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:42,738 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 20 proven. 0 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2025-02-06 19:00:42,738 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:42,738 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1759360095] [2025-02-06 19:00:42,739 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1759360095] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-06 19:00:42,739 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-06 19:00:42,739 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2025-02-06 19:00:42,739 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [35825398] [2025-02-06 19:00:42,739 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-06 19:00:42,739 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:00:42,739 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:42,739 INFO L85 PathProgramCache]: Analyzing trace with hash 416431822, now seen corresponding path program 6 times [2025-02-06 19:00:42,739 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:42,739 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [796617681] [2025-02-06 19:00:42,739 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-02-06 19:00:42,741 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:42,744 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 68 statements into 14 equivalence classes. [2025-02-06 19:00:42,761 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 14 check-sat command(s) and asserted 68 of 68 statements. [2025-02-06 19:00:42,762 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 14 check-sat command(s) [2025-02-06 19:00:42,762 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:42,762 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1157175754] [2025-02-06 19:00:42,762 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-02-06 19:00:42,763 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:42,763 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:42,765 INFO L229 MonitoredProcess]: Starting monitored process 108 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:42,766 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (108)] Waiting until timeout for monitored process [2025-02-06 19:00:42,799 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 68 statements into 14 equivalence classes. [2025-02-06 19:00:53,045 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 14 check-sat command(s) and asserted 68 of 68 statements. [2025-02-06 19:00:53,045 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 14 check-sat command(s) [2025-02-06 19:00:53,045 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:53,045 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:53,052 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 68 statements into 1 equivalence classes. [2025-02-06 19:00:53,170 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 68 of 68 statements. [2025-02-06 19:00:53,171 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:53,171 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:53,182 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:53,501 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:53,501 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:53,501 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:53,501 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:53,501 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:00:53,501 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,501 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:53,501 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:53,501 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration13_Loop [2025-02-06 19:00:53,501 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:53,501 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:53,502 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,504 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,506 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,508 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,509 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,511 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,513 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,515 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,517 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,520 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,522 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,523 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,562 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:53,562 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:00:53,562 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,562 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,564 INFO L229 MonitoredProcess]: Starting monitored process 109 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,564 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (109)] Waiting until timeout for monitored process [2025-02-06 19:00:53,567 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:53,568 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:53,578 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:53,578 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~k#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_~k#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:53,583 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (109)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:53,584 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,584 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,585 INFO L229 MonitoredProcess]: Starting monitored process 110 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,586 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (110)] Waiting until timeout for monitored process [2025-02-06 19:00:53,587 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:53,587 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:53,597 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:53,597 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_~n~0#1=0} Honda state: {ULTIMATE.start_main_~n~0#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:53,603 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (110)] Ended with exit code 0 [2025-02-06 19:00:53,603 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,603 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,605 INFO L229 MonitoredProcess]: Starting monitored process 111 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,606 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (111)] Waiting until timeout for monitored process [2025-02-06 19:00:53,606 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:53,607 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:53,617 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:53,617 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post9#1=0} Honda state: {ULTIMATE.start_main_#t~post9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:53,622 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (111)] Ended with exit code 0 [2025-02-06 19:00:53,625 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,625 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,627 INFO L229 MonitoredProcess]: Starting monitored process 112 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,628 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (112)] Waiting until timeout for monitored process [2025-02-06 19:00:53,628 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:53,628 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:53,638 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:53,639 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:53,645 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (112)] Ended with exit code 0 [2025-02-06 19:00:53,645 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,645 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,647 INFO L229 MonitoredProcess]: Starting monitored process 113 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,648 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (113)] Waiting until timeout for monitored process [2025-02-06 19:00:53,648 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:53,649 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:53,659 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:53,659 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:53,665 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (113)] Ended with exit code 0 [2025-02-06 19:00:53,665 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,665 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,667 INFO L229 MonitoredProcess]: Starting monitored process 114 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,668 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (114)] Waiting until timeout for monitored process [2025-02-06 19:00:53,668 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:53,668 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:53,685 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:53,685 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_~x~0#1=4} Honda state: {ULTIMATE.start_main_~x~0#1=4} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:53,690 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (114)] Ended with exit code 0 [2025-02-06 19:00:53,690 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,690 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,692 INFO L229 MonitoredProcess]: Starting monitored process 115 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,693 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (115)] Waiting until timeout for monitored process [2025-02-06 19:00:53,693 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:53,693 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:53,704 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:53,704 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~n#1=4} Honda state: {ULTIMATE.start_binomialCoefficient_~n#1=4} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:53,709 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (115)] Ended with exit code 0 [2025-02-06 19:00:53,709 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,709 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,711 INFO L229 MonitoredProcess]: Starting monitored process 116 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,712 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (116)] Waiting until timeout for monitored process [2025-02-06 19:00:53,712 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:53,712 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:53,723 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:53,723 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=1} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:53,728 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (116)] Ended with exit code 0 [2025-02-06 19:00:53,728 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,728 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,730 INFO L229 MonitoredProcess]: Starting monitored process 117 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,731 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (117)] Waiting until timeout for monitored process [2025-02-06 19:00:53,732 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:53,732 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:53,748 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (117)] Ended with exit code 0 [2025-02-06 19:00:53,748 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,748 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,750 INFO L229 MonitoredProcess]: Starting monitored process 118 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,750 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (118)] Waiting until timeout for monitored process [2025-02-06 19:00:53,751 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:00:53,751 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:53,762 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:00:53,767 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (118)] Ended with exit code 0 [2025-02-06 19:00:53,767 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:53,767 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:53,767 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:53,767 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:53,767 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:00:53,767 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,767 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:53,767 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:53,768 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration13_Loop [2025-02-06 19:00:53,768 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:53,768 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:53,768 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,770 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,771 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,772 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,774 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,775 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,776 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,777 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,779 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,781 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,783 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,784 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:53,819 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:53,819 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:00:53,819 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,819 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,821 INFO L229 MonitoredProcess]: Starting monitored process 119 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,822 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (119)] Waiting until timeout for monitored process [2025-02-06 19:00:53,823 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:53,832 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:53,832 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:53,832 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:53,832 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:53,832 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:53,832 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:53,832 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:53,833 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:53,839 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (119)] Ended with exit code 0 [2025-02-06 19:00:53,839 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,839 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,840 INFO L229 MonitoredProcess]: Starting monitored process 120 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,841 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (120)] Waiting until timeout for monitored process [2025-02-06 19:00:53,842 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:53,851 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:53,851 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:53,851 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:53,852 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:53,852 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:53,852 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:53,852 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:53,853 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:53,858 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (120)] Ended with exit code 0 [2025-02-06 19:00:53,858 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,858 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,860 INFO L229 MonitoredProcess]: Starting monitored process 121 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,861 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (121)] Waiting until timeout for monitored process [2025-02-06 19:00:53,861 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:53,871 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:53,871 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:53,871 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:53,871 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:53,871 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:53,871 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:53,871 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:53,872 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:53,877 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (121)] Ended with exit code 0 [2025-02-06 19:00:53,877 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,878 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,879 INFO L229 MonitoredProcess]: Starting monitored process 122 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,880 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (122)] Waiting until timeout for monitored process [2025-02-06 19:00:53,881 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:53,891 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:53,891 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:53,891 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:53,891 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:53,891 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:53,891 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:53,891 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:53,892 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:53,898 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (122)] Ended with exit code 0 [2025-02-06 19:00:53,898 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,898 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,900 INFO L229 MonitoredProcess]: Starting monitored process 123 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,900 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (123)] Waiting until timeout for monitored process [2025-02-06 19:00:53,901 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:53,911 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:53,911 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:53,911 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:53,911 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:53,911 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:53,911 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:53,911 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:53,912 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:53,918 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (123)] Ended with exit code 0 [2025-02-06 19:00:53,918 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,918 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,920 INFO L229 MonitoredProcess]: Starting monitored process 124 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,921 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (124)] Waiting until timeout for monitored process [2025-02-06 19:00:53,922 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:53,931 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:53,931 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:53,931 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:53,931 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:53,931 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:53,931 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:53,931 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:53,932 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:53,938 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (124)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:53,938 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,938 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,940 INFO L229 MonitoredProcess]: Starting monitored process 125 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,941 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (125)] Waiting until timeout for monitored process [2025-02-06 19:00:53,942 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:53,951 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:53,951 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:53,951 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:53,951 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:53,951 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:53,951 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:53,951 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:53,952 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:53,957 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (125)] Ended with exit code 0 [2025-02-06 19:00:53,958 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,958 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,960 INFO L229 MonitoredProcess]: Starting monitored process 126 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,960 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (126)] Waiting until timeout for monitored process [2025-02-06 19:00:53,961 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:53,970 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:53,970 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:53,970 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:53,970 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:53,970 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:53,971 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:53,971 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:53,972 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:53,978 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (126)] Ended with exit code 0 [2025-02-06 19:00:53,978 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,979 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,980 INFO L229 MonitoredProcess]: Starting monitored process 127 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,982 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (127)] Waiting until timeout for monitored process [2025-02-06 19:00:53,982 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:53,991 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:53,991 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:53,991 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:53,991 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:53,991 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:53,992 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:53,992 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:53,993 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:00:53,995 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:00:53,995 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:00:53,995 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:53,995 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:53,997 INFO L229 MonitoredProcess]: Starting monitored process 128 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:53,998 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (128)] Waiting until timeout for monitored process [2025-02-06 19:00:53,999 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:00:53,999 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:00:53,999 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:00:53,999 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 7 Supporting invariants [] [2025-02-06 19:00:54,004 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (127)] Ended with exit code 0 [2025-02-06 19:00:54,004 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:00:54,011 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:54,022 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 49 statements into 1 equivalence classes. [2025-02-06 19:00:54,042 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 49 of 49 statements. [2025-02-06 19:00:54,042 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:54,042 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:54,044 INFO L256 TraceCheckSpWp]: Trace formula consists of 319 conjuncts, 16 conjuncts are in the unsatisfiable core [2025-02-06 19:00:54,045 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:54,184 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (128)] Ended with exit code 0 [2025-02-06 19:00:54,220 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 68 statements into 1 equivalence classes. [2025-02-06 19:00:54,252 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 68 of 68 statements. [2025-02-06 19:00:54,252 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:54,252 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:54,254 INFO L256 TraceCheckSpWp]: Trace formula consists of 458 conjuncts, 38 conjuncts are in the unsatisfiable core [2025-02-06 19:00:54,256 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:54,445 INFO L134 CoverageAnalysis]: Checked inductivity of 276 backedges. 0 proven. 148 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2025-02-06 19:00:54,445 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 11 loop predicates [2025-02-06 19:00:54,446 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1003 states and 1349 transitions. cyclomatic complexity: 376 Second operand has 14 states, 13 states have (on average 3.0) internal successors, (39), 13 states have internal predecessors, (39), 6 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (15), 8 states have call predecessors, (15), 6 states have call successors, (15) [2025-02-06 19:00:54,739 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1003 states and 1349 transitions. cyclomatic complexity: 376. Second operand has 14 states, 13 states have (on average 3.0) internal successors, (39), 13 states have internal predecessors, (39), 6 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (15), 8 states have call predecessors, (15), 6 states have call successors, (15) Result 2873 states and 3636 transitions. Complement of second has 83 states. [2025-02-06 19:00:54,739 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 17 states 2 stem states 14 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:54,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 3.0) internal successors, (39), 13 states have internal predecessors, (39), 6 states have call successors, (12), 2 states have call predecessors, (12), 7 states have return successors, (15), 8 states have call predecessors, (15), 6 states have call successors, (15) [2025-02-06 19:00:54,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 85 transitions. [2025-02-06 19:00:54,740 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 17 states and 85 transitions. Stem has 49 letters. Loop has 68 letters. [2025-02-06 19:00:54,740 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:54,740 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 17 states and 85 transitions. Stem has 117 letters. Loop has 68 letters. [2025-02-06 19:00:54,741 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:54,741 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 17 states and 85 transitions. Stem has 49 letters. Loop has 136 letters. [2025-02-06 19:00:54,741 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:54,742 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2873 states and 3636 transitions. [2025-02-06 19:00:54,753 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 76 [2025-02-06 19:00:54,764 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2873 states to 2036 states and 2601 transitions. [2025-02-06 19:00:54,764 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 290 [2025-02-06 19:00:54,764 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 294 [2025-02-06 19:00:54,764 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2036 states and 2601 transitions. [2025-02-06 19:00:54,764 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:54,764 INFO L218 hiAutomatonCegarLoop]: Abstraction has 2036 states and 2601 transitions. [2025-02-06 19:00:54,766 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2036 states and 2601 transitions. [2025-02-06 19:00:54,787 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2036 to 1302. [2025-02-06 19:00:54,789 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1302 states, 849 states have (on average 1.127208480565371) internal successors, (957), 870 states have internal predecessors, (957), 219 states have call successors, (241), 148 states have call predecessors, (241), 234 states have return successors, (538), 283 states have call predecessors, (538), 219 states have call successors, (538) [2025-02-06 19:00:54,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1302 states to 1302 states and 1736 transitions. [2025-02-06 19:00:54,793 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1302 states and 1736 transitions. [2025-02-06 19:00:54,793 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:54,793 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2025-02-06 19:00:54,793 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2025-02-06 19:00:54,793 INFO L87 Difference]: Start difference. First operand 1302 states and 1736 transitions. Second operand has 8 states, 7 states have (on average 3.0) internal successors, (21), 8 states have internal predecessors, (21), 3 states have call successors, (7), 1 states have call predecessors, (7), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2025-02-06 19:00:54,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:54,988 INFO L93 Difference]: Finished difference Result 1330 states and 1678 transitions. [2025-02-06 19:00:54,988 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1330 states and 1678 transitions. [2025-02-06 19:00:54,993 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 58 [2025-02-06 19:00:54,999 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1330 states to 1258 states and 1598 transitions. [2025-02-06 19:00:55,000 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 200 [2025-02-06 19:00:55,000 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 200 [2025-02-06 19:00:55,000 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1258 states and 1598 transitions. [2025-02-06 19:00:55,000 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:55,000 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1258 states and 1598 transitions. [2025-02-06 19:00:55,001 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1258 states and 1598 transitions. [2025-02-06 19:00:55,016 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1258 to 1258. [2025-02-06 19:00:55,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1258 states, 831 states have (on average 1.0842358604091455) internal successors, (901), 850 states have internal predecessors, (901), 195 states have call successors, (217), 148 states have call predecessors, (217), 232 states have return successors, (480), 259 states have call predecessors, (480), 195 states have call successors, (480) [2025-02-06 19:00:55,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1258 states to 1258 states and 1598 transitions. [2025-02-06 19:00:55,021 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1258 states and 1598 transitions. [2025-02-06 19:00:55,022 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-02-06 19:00:55,022 INFO L432 stractBuchiCegarLoop]: Abstraction has 1258 states and 1598 transitions. [2025-02-06 19:00:55,022 INFO L338 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2025-02-06 19:00:55,022 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1258 states and 1598 transitions. [2025-02-06 19:00:55,025 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 58 [2025-02-06 19:00:55,025 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:55,025 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:55,026 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:55,026 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [13, 13, 10, 10, 10, 10, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:55,026 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" [2025-02-06 19:00:55,026 INFO L754 eck$LassoCheckResult]: Loop: "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" [2025-02-06 19:00:55,027 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:55,027 INFO L85 PathProgramCache]: Analyzing trace with hash -1314070721, now seen corresponding path program 1 times [2025-02-06 19:00:55,027 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:55,027 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [293348460] [2025-02-06 19:00:55,027 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:55,027 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:55,030 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 56 statements into 1 equivalence classes. [2025-02-06 19:00:55,035 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 56 of 56 statements. [2025-02-06 19:00:55,038 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:55,038 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:55,039 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [96294827] [2025-02-06 19:00:55,039 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:55,039 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:55,039 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:55,041 INFO L229 MonitoredProcess]: Starting monitored process 129 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:55,042 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (129)] Waiting until timeout for monitored process [2025-02-06 19:00:55,078 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 56 statements into 1 equivalence classes. [2025-02-06 19:00:55,090 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 56 of 56 statements. [2025-02-06 19:00:55,091 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:55,091 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:55,091 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:55,097 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 56 statements into 1 equivalence classes. [2025-02-06 19:00:55,105 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 56 of 56 statements. [2025-02-06 19:00:55,106 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:55,106 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:55,117 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:55,118 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:55,118 INFO L85 PathProgramCache]: Analyzing trace with hash 762801160, now seen corresponding path program 7 times [2025-02-06 19:00:55,118 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:55,118 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1504069762] [2025-02-06 19:00:55,118 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-02-06 19:00:55,118 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:55,121 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 80 statements into 1 equivalence classes. [2025-02-06 19:00:55,137 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 80 of 80 statements. [2025-02-06 19:00:55,138 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:55,138 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:55,139 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1005249090] [2025-02-06 19:00:55,139 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-02-06 19:00:55,139 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:55,139 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:55,141 INFO L229 MonitoredProcess]: Starting monitored process 130 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:55,142 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (130)] Waiting until timeout for monitored process [2025-02-06 19:00:55,176 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 80 statements into 1 equivalence classes. [2025-02-06 19:00:55,292 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 80 of 80 statements. [2025-02-06 19:00:55,292 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:55,292 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:55,292 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:55,299 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 80 statements into 1 equivalence classes. [2025-02-06 19:00:55,371 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 80 of 80 statements. [2025-02-06 19:00:55,371 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:55,371 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:55,379 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:55,380 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:55,380 INFO L85 PathProgramCache]: Analyzing trace with hash -1234100410, now seen corresponding path program 2 times [2025-02-06 19:00:55,380 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:55,380 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [859694950] [2025-02-06 19:00:55,380 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:55,380 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:55,384 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 136 statements into 2 equivalence classes. [2025-02-06 19:00:55,391 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 136 of 136 statements. [2025-02-06 19:00:55,391 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:55,391 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:55,518 INFO L134 CoverageAnalysis]: Checked inductivity of 984 backedges. 121 proven. 121 refuted. 0 times theorem prover too weak. 742 trivial. 0 not checked. [2025-02-06 19:00:55,518 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:55,518 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [859694950] [2025-02-06 19:00:55,518 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [859694950] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:00:55,518 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2005035940] [2025-02-06 19:00:55,518 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:55,518 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:55,519 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:55,522 INFO L229 MonitoredProcess]: Starting monitored process 131 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:55,524 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (131)] Waiting until timeout for monitored process [2025-02-06 19:00:55,565 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 136 statements into 2 equivalence classes. [2025-02-06 19:00:55,588 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 136 of 136 statements. [2025-02-06 19:00:55,588 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:55,589 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:55,590 INFO L256 TraceCheckSpWp]: Trace formula consists of 309 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-02-06 19:00:55,592 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:55,627 INFO L134 CoverageAnalysis]: Checked inductivity of 984 backedges. 583 proven. 25 refuted. 0 times theorem prover too weak. 376 trivial. 0 not checked. [2025-02-06 19:00:55,627 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:00:55,886 INFO L134 CoverageAnalysis]: Checked inductivity of 984 backedges. 121 proven. 122 refuted. 0 times theorem prover too weak. 741 trivial. 0 not checked. [2025-02-06 19:00:55,887 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2005035940] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:00:55,887 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:00:55,887 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10, 12] total 15 [2025-02-06 19:00:55,887 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2139160434] [2025-02-06 19:00:55,887 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:00:56,218 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:56,218 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:56,218 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:56,218 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:56,218 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:00:56,218 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,218 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:56,218 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:56,218 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration14_Loop [2025-02-06 19:00:56,219 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:56,219 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:56,219 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,220 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,221 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,222 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,224 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,225 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,226 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,227 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,228 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,229 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,230 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,233 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,260 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:56,260 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:00:56,261 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,261 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,263 INFO L229 MonitoredProcess]: Starting monitored process 132 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,263 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (132)] Waiting until timeout for monitored process [2025-02-06 19:00:56,264 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,264 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,274 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:56,274 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:56,279 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (132)] Ended with exit code 0 [2025-02-06 19:00:56,280 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,280 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,281 INFO L229 MonitoredProcess]: Starting monitored process 133 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,282 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (133)] Waiting until timeout for monitored process [2025-02-06 19:00:56,283 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,283 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,293 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:56,293 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#in~n#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#in~n#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:56,299 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (133)] Ended with exit code 0 [2025-02-06 19:00:56,299 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,299 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,301 INFO L229 MonitoredProcess]: Starting monitored process 134 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,301 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (134)] Waiting until timeout for monitored process [2025-02-06 19:00:56,302 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,302 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,312 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:56,312 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post9#1=0} Honda state: {ULTIMATE.start_main_#t~post9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:56,318 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (134)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:56,318 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,318 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,320 INFO L229 MonitoredProcess]: Starting monitored process 135 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,320 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (135)] Waiting until timeout for monitored process [2025-02-06 19:00:56,321 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,321 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,331 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:56,331 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_~n~0#1=0} Honda state: {ULTIMATE.start_main_~n~0#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:56,337 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (135)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:56,337 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,337 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,340 INFO L229 MonitoredProcess]: Starting monitored process 136 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,340 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (136)] Waiting until timeout for monitored process [2025-02-06 19:00:56,341 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,341 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,352 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:56,353 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#in~k#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#in~k#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:56,360 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (136)] Ended with exit code 0 [2025-02-06 19:00:56,360 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,360 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,363 INFO L229 MonitoredProcess]: Starting monitored process 137 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,364 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (137)] Waiting until timeout for monitored process [2025-02-06 19:00:56,364 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,364 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,381 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:56,382 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_~x~0#1=5} Honda state: {ULTIMATE.start_main_~x~0#1=5} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:56,387 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (137)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:56,388 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,388 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,390 INFO L229 MonitoredProcess]: Starting monitored process 138 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,391 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (138)] Waiting until timeout for monitored process [2025-02-06 19:00:56,391 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,391 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,401 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:56,401 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:56,407 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (138)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:56,407 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,407 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,409 INFO L229 MonitoredProcess]: Starting monitored process 139 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,410 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (139)] Waiting until timeout for monitored process [2025-02-06 19:00:56,410 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,410 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,421 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:56,421 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:56,426 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (139)] Ended with exit code 0 [2025-02-06 19:00:56,427 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,427 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,429 INFO L229 MonitoredProcess]: Starting monitored process 140 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,430 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (140)] Waiting until timeout for monitored process [2025-02-06 19:00:56,431 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,431 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,441 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:56,441 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~n#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_~n#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:56,449 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (140)] Ended with exit code 0 [2025-02-06 19:00:56,449 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,449 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,451 INFO L229 MonitoredProcess]: Starting monitored process 141 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,453 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (141)] Waiting until timeout for monitored process [2025-02-06 19:00:56,453 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,453 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,465 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:00:56,465 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:00:56,471 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (141)] Ended with exit code 0 [2025-02-06 19:00:56,472 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,472 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,473 INFO L229 MonitoredProcess]: Starting monitored process 142 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,474 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (142)] Waiting until timeout for monitored process [2025-02-06 19:00:56,475 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:00:56,475 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,490 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (142)] Ended with exit code 0 [2025-02-06 19:00:56,490 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,490 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,492 INFO L229 MonitoredProcess]: Starting monitored process 143 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,493 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (143)] Waiting until timeout for monitored process [2025-02-06 19:00:56,494 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:00:56,494 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:00:56,505 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:00:56,511 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (143)] Ended with exit code 0 [2025-02-06 19:00:56,511 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:00:56,511 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:00:56,511 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:00:56,511 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:00:56,511 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:00:56,511 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,511 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:00:56,511 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:00:56,511 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration14_Loop [2025-02-06 19:00:56,511 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:00:56,511 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:00:56,512 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,514 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,516 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,517 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,518 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,519 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,520 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,521 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,522 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,524 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,525 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,526 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:00:56,555 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:00:56,555 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:00:56,555 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,555 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,557 INFO L229 MonitoredProcess]: Starting monitored process 144 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,557 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (144)] Waiting until timeout for monitored process [2025-02-06 19:00:56,558 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,568 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,568 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,568 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,568 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,568 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,568 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,568 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,569 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,574 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (144)] Ended with exit code 0 [2025-02-06 19:00:56,574 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,575 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,576 INFO L229 MonitoredProcess]: Starting monitored process 145 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,577 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (145)] Waiting until timeout for monitored process [2025-02-06 19:00:56,578 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,587 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,587 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,587 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,587 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,587 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,588 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,588 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,589 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,594 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (145)] Ended with exit code 0 [2025-02-06 19:00:56,594 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,594 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,596 INFO L229 MonitoredProcess]: Starting monitored process 146 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,597 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (146)] Waiting until timeout for monitored process [2025-02-06 19:00:56,598 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,607 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,607 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,607 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,607 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,607 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,608 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,608 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,609 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,614 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (146)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:56,615 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,615 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,617 INFO L229 MonitoredProcess]: Starting monitored process 147 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,619 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (147)] Waiting until timeout for monitored process [2025-02-06 19:00:56,619 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,629 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,629 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,629 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,629 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,629 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,629 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,629 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,630 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,636 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (147)] Ended with exit code 0 [2025-02-06 19:00:56,636 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,636 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,638 INFO L229 MonitoredProcess]: Starting monitored process 148 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,639 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (148)] Waiting until timeout for monitored process [2025-02-06 19:00:56,640 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,649 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,649 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,649 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,649 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,649 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,651 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,651 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,652 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,657 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (148)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:56,658 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,659 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,661 INFO L229 MonitoredProcess]: Starting monitored process 149 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,662 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (149)] Waiting until timeout for monitored process [2025-02-06 19:00:56,663 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,672 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,672 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,672 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,672 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,672 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,673 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,673 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,674 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,679 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (149)] Ended with exit code 0 [2025-02-06 19:00:56,679 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,680 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,681 INFO L229 MonitoredProcess]: Starting monitored process 150 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,682 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (150)] Waiting until timeout for monitored process [2025-02-06 19:00:56,683 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,692 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,692 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,692 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,692 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,692 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,693 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,693 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,694 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,699 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (150)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:56,700 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,700 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,701 INFO L229 MonitoredProcess]: Starting monitored process 151 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,702 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (151)] Waiting until timeout for monitored process [2025-02-06 19:00:56,703 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,712 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,712 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,712 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,712 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,712 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,713 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,713 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,714 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,719 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (151)] Ended with exit code 0 [2025-02-06 19:00:56,719 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,719 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,721 INFO L229 MonitoredProcess]: Starting monitored process 152 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,722 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (152)] Waiting until timeout for monitored process [2025-02-06 19:00:56,723 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,732 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,732 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,732 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,732 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,732 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,732 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,732 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,733 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,739 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (152)] Ended with exit code 0 [2025-02-06 19:00:56,739 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,739 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,741 INFO L229 MonitoredProcess]: Starting monitored process 153 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,741 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (153)] Waiting until timeout for monitored process [2025-02-06 19:00:56,742 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,751 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,751 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,751 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,751 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,751 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,752 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,752 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,753 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,758 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (153)] Ended with exit code 0 [2025-02-06 19:00:56,758 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,758 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,760 INFO L229 MonitoredProcess]: Starting monitored process 154 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,761 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (154)] Waiting until timeout for monitored process [2025-02-06 19:00:56,761 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,770 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,771 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,771 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,771 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,771 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,771 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,771 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,772 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:00:56,777 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (154)] Ended with exit code 0 [2025-02-06 19:00:56,778 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,778 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,780 INFO L229 MonitoredProcess]: Starting monitored process 155 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,780 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (155)] Waiting until timeout for monitored process [2025-02-06 19:00:56,781 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:00:56,790 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:00:56,790 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:00:56,790 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:00:56,790 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:00:56,790 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:00:56,791 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:00:56,791 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:00:56,792 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:00:56,794 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:00:56,794 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:00:56,794 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:00:56,794 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:56,796 INFO L229 MonitoredProcess]: Starting monitored process 156 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:00:56,796 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (156)] Waiting until timeout for monitored process [2025-02-06 19:00:56,797 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:00:56,797 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:00:56,797 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:00:56,797 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 9 Supporting invariants [] [2025-02-06 19:00:56,802 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (155)] Ended with exit code 0 [2025-02-06 19:00:56,802 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:00:56,813 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:56,830 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 56 statements into 1 equivalence classes. [2025-02-06 19:00:56,858 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 56 of 56 statements. [2025-02-06 19:00:56,858 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:56,858 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:56,860 INFO L256 TraceCheckSpWp]: Trace formula consists of 361 conjuncts, 18 conjuncts are in the unsatisfiable core [2025-02-06 19:00:56,861 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:57,054 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 80 statements into 1 equivalence classes. [2025-02-06 19:00:57,102 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 80 of 80 statements. [2025-02-06 19:00:57,102 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:57,102 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:57,105 INFO L256 TraceCheckSpWp]: Trace formula consists of 538 conjuncts, 44 conjuncts are in the unsatisfiable core [2025-02-06 19:00:57,107 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:57,315 INFO L134 CoverageAnalysis]: Checked inductivity of 402 backedges. 0 proven. 216 refuted. 0 times theorem prover too weak. 186 trivial. 0 not checked. [2025-02-06 19:00:57,315 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 12 loop predicates [2025-02-06 19:00:57,316 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1258 states and 1598 transitions. cyclomatic complexity: 378 Second operand has 14 states, 13 states have (on average 3.230769230769231) internal successors, (42), 14 states have internal predecessors, (42), 6 states have call successors, (12), 2 states have call predecessors, (12), 8 states have return successors, (16), 9 states have call predecessors, (16), 6 states have call successors, (16) [2025-02-06 19:00:57,459 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (156)] Forceful destruction successful, exit code 0 [2025-02-06 19:00:57,683 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1258 states and 1598 transitions. cyclomatic complexity: 378. Second operand has 14 states, 13 states have (on average 3.230769230769231) internal successors, (42), 14 states have internal predecessors, (42), 6 states have call successors, (12), 2 states have call predecessors, (12), 8 states have return successors, (16), 9 states have call predecessors, (16), 6 states have call successors, (16) Result 3978 states and 4897 transitions. Complement of second has 93 states. [2025-02-06 19:00:57,684 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 19 states 2 stem states 16 non-accepting loop states 1 accepting loop states [2025-02-06 19:00:57,684 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 3.230769230769231) internal successors, (42), 14 states have internal predecessors, (42), 6 states have call successors, (12), 2 states have call predecessors, (12), 8 states have return successors, (16), 9 states have call predecessors, (16), 6 states have call successors, (16) [2025-02-06 19:00:57,685 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 90 transitions. [2025-02-06 19:00:57,685 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 90 transitions. Stem has 56 letters. Loop has 80 letters. [2025-02-06 19:00:57,685 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:57,685 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 90 transitions. Stem has 136 letters. Loop has 80 letters. [2025-02-06 19:00:57,687 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:57,687 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 19 states and 90 transitions. Stem has 56 letters. Loop has 160 letters. [2025-02-06 19:00:57,688 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:00:57,688 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3978 states and 4897 transitions. [2025-02-06 19:00:57,700 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 58 [2025-02-06 19:00:57,714 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3978 states to 2610 states and 3227 transitions. [2025-02-06 19:00:57,714 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 292 [2025-02-06 19:00:57,715 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 297 [2025-02-06 19:00:57,715 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2610 states and 3227 transitions. [2025-02-06 19:00:57,715 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:57,715 INFO L218 hiAutomatonCegarLoop]: Abstraction has 2610 states and 3227 transitions. [2025-02-06 19:00:57,717 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2610 states and 3227 transitions. [2025-02-06 19:00:57,748 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2610 to 1583. [2025-02-06 19:00:57,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1583 states, 1049 states have (on average 1.0781696854146807) internal successors, (1131), 1070 states have internal predecessors, (1131), 228 states have call successors, (263), 187 states have call predecessors, (263), 306 states have return successors, (625), 325 states have call predecessors, (625), 228 states have call successors, (625) [2025-02-06 19:00:57,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1583 states to 1583 states and 2019 transitions. [2025-02-06 19:00:57,754 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1583 states and 2019 transitions. [2025-02-06 19:00:57,754 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:57,754 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2025-02-06 19:00:57,755 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=54, Invalid=156, Unknown=0, NotChecked=0, Total=210 [2025-02-06 19:00:57,755 INFO L87 Difference]: Start difference. First operand 1583 states and 2019 transitions. Second operand has 15 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (18), 2 states have call predecessors, (18), 5 states have return successors, (19), 8 states have call predecessors, (19), 10 states have call successors, (19) [2025-02-06 19:00:57,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:57,966 INFO L93 Difference]: Finished difference Result 2072 states and 2837 transitions. [2025-02-06 19:00:57,966 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2072 states and 2837 transitions. [2025-02-06 19:00:57,973 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 90 [2025-02-06 19:00:57,982 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2072 states to 1915 states and 2664 transitions. [2025-02-06 19:00:57,983 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 302 [2025-02-06 19:00:57,983 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 302 [2025-02-06 19:00:57,983 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1915 states and 2664 transitions. [2025-02-06 19:00:57,983 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:57,983 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1915 states and 2664 transitions. [2025-02-06 19:00:57,984 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1915 states and 2664 transitions. [2025-02-06 19:00:58,007 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1915 to 1528. [2025-02-06 19:00:58,013 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1528 states, 1006 states have (on average 1.0785288270377733) internal successors, (1085), 1030 states have internal predecessors, (1085), 243 states have call successors, (272), 166 states have call predecessors, (272), 279 states have return successors, (694), 331 states have call predecessors, (694), 243 states have call successors, (694) [2025-02-06 19:00:58,022 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1528 states to 1528 states and 2051 transitions. [2025-02-06 19:00:58,022 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1528 states and 2051 transitions. [2025-02-06 19:00:58,022 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2025-02-06 19:00:58,023 INFO L432 stractBuchiCegarLoop]: Abstraction has 1528 states and 2051 transitions. [2025-02-06 19:00:58,023 INFO L338 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2025-02-06 19:00:58,023 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1528 states and 2051 transitions. [2025-02-06 19:00:58,026 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 76 [2025-02-06 19:00:58,026 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:58,026 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:58,026 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:58,026 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [11, 11, 6, 5, 5, 5, 5, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:58,026 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:00:58,027 INFO L754 eck$LassoCheckResult]: Loop: "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:00:58,027 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:58,027 INFO L85 PathProgramCache]: Analyzing trace with hash 1146062653, now seen corresponding path program 1 times [2025-02-06 19:00:58,027 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:58,027 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1716166209] [2025-02-06 19:00:58,027 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:58,027 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:58,031 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 59 statements into 1 equivalence classes. [2025-02-06 19:00:58,036 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:00:58,036 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:58,036 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:58,037 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [538662110] [2025-02-06 19:00:58,037 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:58,037 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:58,037 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:58,039 INFO L229 MonitoredProcess]: Starting monitored process 157 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:58,044 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (157)] Waiting until timeout for monitored process [2025-02-06 19:00:58,079 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 59 statements into 1 equivalence classes. [2025-02-06 19:00:58,093 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:00:58,093 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:58,094 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:58,094 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:58,100 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 59 statements into 1 equivalence classes. [2025-02-06 19:00:58,106 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:00:58,106 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:58,106 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:58,117 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:58,117 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:58,117 INFO L85 PathProgramCache]: Analyzing trace with hash -985268712, now seen corresponding path program 1 times [2025-02-06 19:00:58,117 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:58,117 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [785371766] [2025-02-06 19:00:58,117 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:58,117 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:58,120 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-02-06 19:00:58,123 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-02-06 19:00:58,123 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:58,123 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:58,227 INFO L134 CoverageAnalysis]: Checked inductivity of 245 backedges. 21 proven. 69 refuted. 0 times theorem prover too weak. 155 trivial. 0 not checked. [2025-02-06 19:00:58,227 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:58,227 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [785371766] [2025-02-06 19:00:58,227 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [785371766] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:00:58,227 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1693482852] [2025-02-06 19:00:58,227 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-06 19:00:58,227 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:58,228 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:58,229 INFO L229 MonitoredProcess]: Starting monitored process 158 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:58,231 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (158)] Waiting until timeout for monitored process [2025-02-06 19:00:58,267 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-02-06 19:00:58,283 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-02-06 19:00:58,283 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:58,283 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:58,285 INFO L256 TraceCheckSpWp]: Trace formula consists of 172 conjuncts, 11 conjuncts are in the unsatisfiable core [2025-02-06 19:00:58,287 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:58,327 INFO L134 CoverageAnalysis]: Checked inductivity of 245 backedges. 148 proven. 15 refuted. 0 times theorem prover too weak. 82 trivial. 0 not checked. [2025-02-06 19:00:58,327 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:00:58,478 INFO L134 CoverageAnalysis]: Checked inductivity of 245 backedges. 15 proven. 98 refuted. 0 times theorem prover too weak. 132 trivial. 0 not checked. [2025-02-06 19:00:58,478 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1693482852] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:00:58,478 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:00:58,478 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 18 [2025-02-06 19:00:58,478 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [779135965] [2025-02-06 19:00:58,478 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:00:58,478 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:00:58,478 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:58,479 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2025-02-06 19:00:58,479 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=56, Invalid=250, Unknown=0, NotChecked=0, Total=306 [2025-02-06 19:00:58,479 INFO L87 Difference]: Start difference. First operand 1528 states and 2051 transitions. cyclomatic complexity: 564 Second operand has 18 states, 11 states have (on average 3.6363636363636362) internal successors, (40), 12 states have internal predecessors, (40), 12 states have call successors, (19), 2 states have call predecessors, (19), 5 states have return successors, (20), 10 states have call predecessors, (20), 12 states have call successors, (20) [2025-02-06 19:00:58,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:00:58,755 INFO L93 Difference]: Finished difference Result 1851 states and 2493 transitions. [2025-02-06 19:00:58,755 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1851 states and 2493 transitions. [2025-02-06 19:00:58,761 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 122 [2025-02-06 19:00:58,769 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1851 states to 1777 states and 2399 transitions. [2025-02-06 19:00:58,769 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 321 [2025-02-06 19:00:58,770 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 321 [2025-02-06 19:00:58,770 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1777 states and 2399 transitions. [2025-02-06 19:00:58,770 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:00:58,770 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1777 states and 2399 transitions. [2025-02-06 19:00:58,771 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1777 states and 2399 transitions. [2025-02-06 19:00:58,792 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1777 to 1570. [2025-02-06 19:00:58,798 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1570 states, 1022 states have (on average 1.0675146771037183) internal successors, (1091), 1028 states have internal predecessors, (1091), 281 states have call successors, (310), 188 states have call predecessors, (310), 267 states have return successors, (758), 353 states have call predecessors, (758), 281 states have call successors, (758) [2025-02-06 19:00:58,802 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1570 states to 1570 states and 2159 transitions. [2025-02-06 19:00:58,802 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1570 states and 2159 transitions. [2025-02-06 19:00:58,803 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2025-02-06 19:00:58,803 INFO L432 stractBuchiCegarLoop]: Abstraction has 1570 states and 2159 transitions. [2025-02-06 19:00:58,803 INFO L338 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2025-02-06 19:00:58,803 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1570 states and 2159 transitions. [2025-02-06 19:00:58,806 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 86 [2025-02-06 19:00:58,806 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:00:58,806 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:00:58,807 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:58,807 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [12, 12, 6, 6, 6, 6, 6, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:00:58,807 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:00:58,808 INFO L754 eck$LassoCheckResult]: Loop: "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:00:58,808 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:58,808 INFO L85 PathProgramCache]: Analyzing trace with hash 1146062653, now seen corresponding path program 2 times [2025-02-06 19:00:58,808 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:58,808 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1734397739] [2025-02-06 19:00:58,808 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:58,808 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:58,812 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 59 statements into 2 equivalence classes. [2025-02-06 19:00:58,815 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:00:58,816 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:58,816 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:00:58,817 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [530634123] [2025-02-06 19:00:58,817 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:58,817 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:58,817 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:58,819 INFO L229 MonitoredProcess]: Starting monitored process 159 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:58,820 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (159)] Waiting until timeout for monitored process [2025-02-06 19:00:58,858 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 59 statements into 2 equivalence classes. [2025-02-06 19:00:58,876 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:00:58,876 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:58,876 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:58,877 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:00:58,883 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 59 statements into 1 equivalence classes. [2025-02-06 19:00:58,889 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:00:58,890 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:00:58,890 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:00:58,901 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:00:58,901 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:00:58,901 INFO L85 PathProgramCache]: Analyzing trace with hash 2102615230, now seen corresponding path program 2 times [2025-02-06 19:00:58,901 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:00:58,901 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1197210207] [2025-02-06 19:00:58,901 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:58,901 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:00:58,905 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 78 statements into 2 equivalence classes. [2025-02-06 19:00:58,909 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 78 of 78 statements. [2025-02-06 19:00:58,910 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:58,910 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:59,044 INFO L134 CoverageAnalysis]: Checked inductivity of 299 backedges. 14 proven. 63 refuted. 0 times theorem prover too weak. 222 trivial. 0 not checked. [2025-02-06 19:00:59,045 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:00:59,045 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1197210207] [2025-02-06 19:00:59,045 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1197210207] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:00:59,045 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [263390614] [2025-02-06 19:00:59,045 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:00:59,045 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:00:59,045 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:00:59,048 INFO L229 MonitoredProcess]: Starting monitored process 160 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:00:59,049 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (160)] Waiting until timeout for monitored process [2025-02-06 19:00:59,088 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 78 statements into 2 equivalence classes. [2025-02-06 19:00:59,104 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 78 of 78 statements. [2025-02-06 19:00:59,104 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:00:59,104 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:00:59,105 INFO L256 TraceCheckSpWp]: Trace formula consists of 184 conjuncts, 14 conjuncts are in the unsatisfiable core [2025-02-06 19:00:59,106 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:00:59,205 INFO L134 CoverageAnalysis]: Checked inductivity of 299 backedges. 171 proven. 44 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2025-02-06 19:00:59,205 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:00:59,407 INFO L134 CoverageAnalysis]: Checked inductivity of 299 backedges. 15 proven. 98 refuted. 0 times theorem prover too weak. 186 trivial. 0 not checked. [2025-02-06 19:00:59,407 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [263390614] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:00:59,407 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:00:59,407 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11, 12] total 24 [2025-02-06 19:00:59,407 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [446350753] [2025-02-06 19:00:59,407 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:00:59,407 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:00:59,407 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:00:59,407 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2025-02-06 19:00:59,408 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=89, Invalid=463, Unknown=0, NotChecked=0, Total=552 [2025-02-06 19:00:59,408 INFO L87 Difference]: Start difference. First operand 1570 states and 2159 transitions. cyclomatic complexity: 630 Second operand has 24 states, 18 states have (on average 3.0555555555555554) internal successors, (55), 21 states have internal predecessors, (55), 15 states have call successors, (23), 2 states have call predecessors, (23), 5 states have return successors, (23), 11 states have call predecessors, (23), 15 states have call successors, (23) [2025-02-06 19:01:00,012 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:00,012 INFO L93 Difference]: Finished difference Result 1928 states and 2656 transitions. [2025-02-06 19:01:00,012 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1928 states and 2656 transitions. [2025-02-06 19:01:00,022 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 162 [2025-02-06 19:01:00,042 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1928 states to 1899 states and 2619 transitions. [2025-02-06 19:01:00,042 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 401 [2025-02-06 19:01:00,043 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 401 [2025-02-06 19:01:00,043 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1899 states and 2619 transitions. [2025-02-06 19:01:00,043 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:00,043 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1899 states and 2619 transitions. [2025-02-06 19:01:00,044 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1899 states and 2619 transitions. [2025-02-06 19:01:00,068 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1899 to 1612. [2025-02-06 19:01:00,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1612 states, 1062 states have (on average 1.06120527306968) internal successors, (1127), 1068 states have internal predecessors, (1127), 283 states have call successors, (312), 188 states have call predecessors, (312), 267 states have return successors, (768), 355 states have call predecessors, (768), 283 states have call successors, (768) [2025-02-06 19:01:00,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1612 states to 1612 states and 2207 transitions. [2025-02-06 19:01:00,074 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1612 states and 2207 transitions. [2025-02-06 19:01:00,074 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2025-02-06 19:01:00,074 INFO L432 stractBuchiCegarLoop]: Abstraction has 1612 states and 2207 transitions. [2025-02-06 19:01:00,074 INFO L338 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2025-02-06 19:01:00,074 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1612 states and 2207 transitions. [2025-02-06 19:01:00,078 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 101 [2025-02-06 19:01:00,078 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:00,078 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:00,080 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:00,081 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [22, 22, 13, 13, 13, 13, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:00,081 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:01:00,082 INFO L754 eck$LassoCheckResult]: Loop: "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:01:00,082 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:00,082 INFO L85 PathProgramCache]: Analyzing trace with hash 1146062653, now seen corresponding path program 3 times [2025-02-06 19:01:00,082 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:00,082 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [687434748] [2025-02-06 19:01:00,082 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:00,082 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:00,086 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 59 statements into 8 equivalence classes. [2025-02-06 19:01:00,098 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:01:00,098 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2025-02-06 19:01:00,098 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:01:00,099 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1756384620] [2025-02-06 19:01:00,099 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:00,099 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:00,099 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:00,107 INFO L229 MonitoredProcess]: Starting monitored process 161 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:00,108 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (161)] Waiting until timeout for monitored process [2025-02-06 19:01:00,147 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 59 statements into 8 equivalence classes. [2025-02-06 19:01:00,165 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:01:00,165 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2025-02-06 19:01:00,165 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:00,165 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:01:00,172 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 59 statements into 1 equivalence classes. [2025-02-06 19:01:00,178 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:01:00,179 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:00,179 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:00,190 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:01:00,190 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:00,190 INFO L85 PathProgramCache]: Analyzing trace with hash -2060483159, now seen corresponding path program 3 times [2025-02-06 19:01:00,190 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:00,190 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [538252400] [2025-02-06 19:01:00,190 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:00,191 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:00,199 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 140 statements into 12 equivalence classes. [2025-02-06 19:01:00,208 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) and asserted 81 of 140 statements. [2025-02-06 19:01:00,208 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2025-02-06 19:01:00,208 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:00,287 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 180 proven. 3 refuted. 0 times theorem prover too weak. 914 trivial. 0 not checked. [2025-02-06 19:01:00,287 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:00,287 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [538252400] [2025-02-06 19:01:00,287 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [538252400] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:00,287 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [153871191] [2025-02-06 19:01:00,287 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:00,288 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:00,288 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:00,290 INFO L229 MonitoredProcess]: Starting monitored process 162 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:00,291 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (162)] Waiting until timeout for monitored process [2025-02-06 19:01:00,338 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 140 statements into 12 equivalence classes. [2025-02-06 19:01:00,363 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) and asserted 81 of 140 statements. [2025-02-06 19:01:00,363 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2025-02-06 19:01:00,363 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:00,364 INFO L256 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 11 conjuncts are in the unsatisfiable core [2025-02-06 19:01:00,366 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:00,397 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 180 proven. 3 refuted. 0 times theorem prover too weak. 914 trivial. 0 not checked. [2025-02-06 19:01:00,397 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:00,571 INFO L134 CoverageAnalysis]: Checked inductivity of 1097 backedges. 180 proven. 4 refuted. 0 times theorem prover too weak. 913 trivial. 0 not checked. [2025-02-06 19:01:00,571 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [153871191] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:00,572 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:00,572 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8, 9] total 11 [2025-02-06 19:01:00,572 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1042890469] [2025-02-06 19:01:00,572 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:00,572 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:01:00,572 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:00,572 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-02-06 19:01:00,572 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=82, Unknown=0, NotChecked=0, Total=110 [2025-02-06 19:01:00,572 INFO L87 Difference]: Start difference. First operand 1612 states and 2207 transitions. cyclomatic complexity: 636 Second operand has 11 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 11 states have internal predecessors, (33), 7 states have call successors, (16), 1 states have call predecessors, (16), 3 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2025-02-06 19:01:00,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:00,684 INFO L93 Difference]: Finished difference Result 1701 states and 2308 transitions. [2025-02-06 19:01:00,684 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1701 states and 2308 transitions. [2025-02-06 19:01:00,689 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 106 [2025-02-06 19:01:00,696 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1701 states to 1656 states and 2254 transitions. [2025-02-06 19:01:00,697 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 303 [2025-02-06 19:01:00,697 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 303 [2025-02-06 19:01:00,697 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1656 states and 2254 transitions. [2025-02-06 19:01:00,697 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:00,697 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1656 states and 2254 transitions. [2025-02-06 19:01:00,698 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1656 states and 2254 transitions. [2025-02-06 19:01:00,717 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1656 to 1593. [2025-02-06 19:01:00,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1593 states, 1044 states have (on average 1.0565134099616857) internal successors, (1103), 1047 states have internal predecessors, (1103), 288 states have call successors, (317), 185 states have call predecessors, (317), 261 states have return successors, (763), 360 states have call predecessors, (763), 288 states have call successors, (763) [2025-02-06 19:01:00,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1593 states to 1593 states and 2183 transitions. [2025-02-06 19:01:00,722 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1593 states and 2183 transitions. [2025-02-06 19:01:00,723 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-02-06 19:01:00,723 INFO L432 stractBuchiCegarLoop]: Abstraction has 1593 states and 2183 transitions. [2025-02-06 19:01:00,723 INFO L338 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2025-02-06 19:01:00,723 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1593 states and 2183 transitions. [2025-02-06 19:01:00,726 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 103 [2025-02-06 19:01:00,726 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:00,726 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:00,727 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 6, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:00,727 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [15, 15, 9, 6, 6, 6, 6, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:00,727 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:01:00,727 INFO L754 eck$LassoCheckResult]: Loop: "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" [2025-02-06 19:01:00,727 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:00,728 INFO L85 PathProgramCache]: Analyzing trace with hash 1146062653, now seen corresponding path program 4 times [2025-02-06 19:01:00,728 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:00,728 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1578856428] [2025-02-06 19:01:00,728 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-02-06 19:01:00,728 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:00,731 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 59 statements into 2 equivalence classes. [2025-02-06 19:01:00,739 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:01:00,739 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-02-06 19:01:00,739 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:01:00,740 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1520734843] [2025-02-06 19:01:00,740 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-02-06 19:01:00,740 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:00,740 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:00,742 INFO L229 MonitoredProcess]: Starting monitored process 163 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:00,744 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (163)] Waiting until timeout for monitored process [2025-02-06 19:01:00,789 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 59 statements into 2 equivalence classes. [2025-02-06 19:01:00,804 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:01:00,804 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-02-06 19:01:00,804 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:00,804 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:01:00,811 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 59 statements into 1 equivalence classes. [2025-02-06 19:01:00,818 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 59 of 59 statements. [2025-02-06 19:01:00,818 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:00,818 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:00,833 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:01:00,834 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:00,834 INFO L85 PathProgramCache]: Analyzing trace with hash -1641806437, now seen corresponding path program 4 times [2025-02-06 19:01:00,834 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:00,834 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [775075716] [2025-02-06 19:01:00,834 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-02-06 19:01:00,834 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:00,838 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 98 statements into 2 equivalence classes. [2025-02-06 19:01:00,845 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:00,847 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) [2025-02-06 19:01:00,847 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:00,945 INFO L134 CoverageAnalysis]: Checked inductivity of 467 backedges. 44 proven. 56 refuted. 0 times theorem prover too weak. 367 trivial. 0 not checked. [2025-02-06 19:01:00,946 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:00,946 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [775075716] [2025-02-06 19:01:00,946 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [775075716] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:00,946 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2123746258] [2025-02-06 19:01:00,946 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-02-06 19:01:00,946 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:00,946 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:00,952 INFO L229 MonitoredProcess]: Starting monitored process 164 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:00,952 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (164)] Waiting until timeout for monitored process [2025-02-06 19:01:00,997 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 98 statements into 2 equivalence classes. [2025-02-06 19:01:01,015 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:01,015 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) [2025-02-06 19:01:01,015 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:01,016 INFO L256 TraceCheckSpWp]: Trace formula consists of 236 conjuncts, 19 conjuncts are in the unsatisfiable core [2025-02-06 19:01:01,018 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:01,117 INFO L134 CoverageAnalysis]: Checked inductivity of 467 backedges. 230 proven. 82 refuted. 0 times theorem prover too weak. 155 trivial. 0 not checked. [2025-02-06 19:01:01,117 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:01,420 INFO L134 CoverageAnalysis]: Checked inductivity of 467 backedges. 79 proven. 134 refuted. 0 times theorem prover too weak. 254 trivial. 0 not checked. [2025-02-06 19:01:01,420 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2123746258] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:01,420 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:01,420 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 13, 14] total 23 [2025-02-06 19:01:01,420 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [204393862] [2025-02-06 19:01:01,420 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:01,421 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:01:01,421 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:01,421 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2025-02-06 19:01:01,421 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=77, Invalid=429, Unknown=0, NotChecked=0, Total=506 [2025-02-06 19:01:01,421 INFO L87 Difference]: Start difference. First operand 1593 states and 2183 transitions. cyclomatic complexity: 628 Second operand has 23 states, 16 states have (on average 3.4375) internal successors, (55), 21 states have internal predecessors, (55), 15 states have call successors, (26), 2 states have call predecessors, (26), 5 states have return successors, (26), 11 states have call predecessors, (26), 15 states have call successors, (26) [2025-02-06 19:01:01,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:01,978 INFO L93 Difference]: Finished difference Result 1438 states and 1982 transitions. [2025-02-06 19:01:01,978 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1438 states and 1982 transitions. [2025-02-06 19:01:01,984 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 119 [2025-02-06 19:01:01,989 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1438 states to 1205 states and 1628 transitions. [2025-02-06 19:01:01,989 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 315 [2025-02-06 19:01:01,990 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 347 [2025-02-06 19:01:01,990 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1205 states and 1628 transitions. [2025-02-06 19:01:01,990 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:01,990 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1205 states and 1628 transitions. [2025-02-06 19:01:01,991 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1205 states and 1628 transitions. [2025-02-06 19:01:02,004 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1205 to 1156. [2025-02-06 19:01:02,005 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1156 states, 767 states have (on average 1.0417209908735332) internal successors, (799), 767 states have internal predecessors, (799), 203 states have call successors, (224), 130 states have call predecessors, (224), 186 states have return successors, (535), 258 states have call predecessors, (535), 203 states have call successors, (535) [2025-02-06 19:01:02,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1156 states to 1156 states and 1558 transitions. [2025-02-06 19:01:02,007 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1156 states and 1558 transitions. [2025-02-06 19:01:02,008 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2025-02-06 19:01:02,008 INFO L432 stractBuchiCegarLoop]: Abstraction has 1156 states and 1558 transitions. [2025-02-06 19:01:02,009 INFO L338 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2025-02-06 19:01:02,009 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1156 states and 1558 transitions. [2025-02-06 19:01:02,011 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 103 [2025-02-06 19:01:02,011 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:02,011 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:02,012 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [10, 10, 7, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:02,012 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [20, 20, 11, 11, 11, 11, 9, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:02,012 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" [2025-02-06 19:01:02,012 INFO L754 eck$LassoCheckResult]: Loop: "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" [2025-02-06 19:01:02,012 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:02,013 INFO L85 PathProgramCache]: Analyzing trace with hash 1380587932, now seen corresponding path program 5 times [2025-02-06 19:01:02,013 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:02,013 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1163437275] [2025-02-06 19:01:02,013 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-02-06 19:01:02,013 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:02,016 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 72 statements into 8 equivalence classes. [2025-02-06 19:01:02,025 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) and asserted 72 of 72 statements. [2025-02-06 19:01:02,025 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2025-02-06 19:01:02,025 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:01:02,026 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [506206811] [2025-02-06 19:01:02,026 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-02-06 19:01:02,026 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:02,026 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:02,031 INFO L229 MonitoredProcess]: Starting monitored process 165 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:02,032 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (165)] Waiting until timeout for monitored process [2025-02-06 19:01:02,081 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 72 statements into 8 equivalence classes. [2025-02-06 19:01:02,104 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) and asserted 72 of 72 statements. [2025-02-06 19:01:02,104 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2025-02-06 19:01:02,104 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:02,104 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:01:02,112 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-02-06 19:01:02,120 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-02-06 19:01:02,120 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:02,120 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:02,132 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:01:02,132 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:02,132 INFO L85 PathProgramCache]: Analyzing trace with hash 847508173, now seen corresponding path program 5 times [2025-02-06 19:01:02,132 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:02,132 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [690448474] [2025-02-06 19:01:02,133 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-02-06 19:01:02,133 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:02,137 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 128 statements into 15 equivalence classes. [2025-02-06 19:01:02,141 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 9 check-sat command(s) and asserted 56 of 128 statements. [2025-02-06 19:01:02,141 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 9 check-sat command(s) [2025-02-06 19:01:02,141 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:02,243 INFO L134 CoverageAnalysis]: Checked inductivity of 887 backedges. 206 proven. 121 refuted. 0 times theorem prover too weak. 560 trivial. 0 not checked. [2025-02-06 19:01:02,244 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:02,244 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [690448474] [2025-02-06 19:01:02,244 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [690448474] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:02,244 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [240667558] [2025-02-06 19:01:02,244 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-02-06 19:01:02,244 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:02,244 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:02,247 INFO L229 MonitoredProcess]: Starting monitored process 166 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:02,249 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (166)] Waiting until timeout for monitored process [2025-02-06 19:01:02,298 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 128 statements into 15 equivalence classes. [2025-02-06 19:01:02,311 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 9 check-sat command(s) and asserted 56 of 128 statements. [2025-02-06 19:01:02,311 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 9 check-sat command(s) [2025-02-06 19:01:02,311 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:02,312 INFO L256 TraceCheckSpWp]: Trace formula consists of 126 conjuncts, 17 conjuncts are in the unsatisfiable core [2025-02-06 19:01:02,314 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:02,349 INFO L134 CoverageAnalysis]: Checked inductivity of 887 backedges. 498 proven. 45 refuted. 0 times theorem prover too weak. 344 trivial. 0 not checked. [2025-02-06 19:01:02,349 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:02,674 INFO L134 CoverageAnalysis]: Checked inductivity of 887 backedges. 206 proven. 126 refuted. 0 times theorem prover too weak. 555 trivial. 0 not checked. [2025-02-06 19:01:02,674 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [240667558] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:02,674 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:02,674 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11, 14] total 17 [2025-02-06 19:01:02,674 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1068264195] [2025-02-06 19:01:02,674 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:02,675 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:01:02,675 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:02,675 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2025-02-06 19:01:02,675 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2025-02-06 19:01:02,675 INFO L87 Difference]: Start difference. First operand 1156 states and 1558 transitions. cyclomatic complexity: 431 Second operand has 17 states, 14 states have (on average 3.5) internal successors, (49), 16 states have internal predecessors, (49), 11 states have call successors, (18), 2 states have call predecessors, (18), 7 states have return successors, (19), 7 states have call predecessors, (19), 11 states have call successors, (19) [2025-02-06 19:01:02,919 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:02,919 INFO L93 Difference]: Finished difference Result 1296 states and 1764 transitions. [2025-02-06 19:01:02,919 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1296 states and 1764 transitions. [2025-02-06 19:01:02,923 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 131 [2025-02-06 19:01:02,927 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1296 states to 1294 states and 1762 transitions. [2025-02-06 19:01:02,928 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 373 [2025-02-06 19:01:02,928 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 373 [2025-02-06 19:01:02,928 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1294 states and 1762 transitions. [2025-02-06 19:01:02,928 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:02,928 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1294 states and 1762 transitions. [2025-02-06 19:01:02,929 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1294 states and 1762 transitions. [2025-02-06 19:01:02,940 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1294 to 1179. [2025-02-06 19:01:02,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1179 states, 779 states have (on average 1.0436456996148908) internal successors, (813), 775 states have internal predecessors, (813), 214 states have call successors, (235), 137 states have call predecessors, (235), 186 states have return successors, (548), 266 states have call predecessors, (548), 214 states have call successors, (548) [2025-02-06 19:01:02,943 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1179 states to 1179 states and 1596 transitions. [2025-02-06 19:01:02,943 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1179 states and 1596 transitions. [2025-02-06 19:01:02,944 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2025-02-06 19:01:02,944 INFO L432 stractBuchiCegarLoop]: Abstraction has 1179 states and 1596 transitions. [2025-02-06 19:01:02,944 INFO L338 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2025-02-06 19:01:02,944 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1179 states and 1596 transitions. [2025-02-06 19:01:02,946 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 107 [2025-02-06 19:01:02,947 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:02,947 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:02,947 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [10, 10, 7, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:02,947 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [17, 17, 9, 8, 8, 8, 8, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:02,948 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" [2025-02-06 19:01:02,948 INFO L754 eck$LassoCheckResult]: Loop: "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" [2025-02-06 19:01:02,948 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:02,948 INFO L85 PathProgramCache]: Analyzing trace with hash 1380587932, now seen corresponding path program 6 times [2025-02-06 19:01:02,948 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:02,948 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1170624015] [2025-02-06 19:01:02,948 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-02-06 19:01:02,948 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:02,952 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 72 statements into 8 equivalence classes. [2025-02-06 19:01:02,959 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) and asserted 72 of 72 statements. [2025-02-06 19:01:02,959 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2025-02-06 19:01:02,959 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:01:02,961 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2075930912] [2025-02-06 19:01:02,961 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-02-06 19:01:02,961 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:02,961 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:02,963 INFO L229 MonitoredProcess]: Starting monitored process 167 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:02,965 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (167)] Waiting until timeout for monitored process [2025-02-06 19:01:03,013 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 72 statements into 8 equivalence classes. [2025-02-06 19:01:03,036 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) and asserted 72 of 72 statements. [2025-02-06 19:01:03,036 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2025-02-06 19:01:03,036 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:03,036 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:01:03,044 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-02-06 19:01:03,051 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-02-06 19:01:03,052 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:03,052 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:03,064 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:01:03,064 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:03,065 INFO L85 PathProgramCache]: Analyzing trace with hash -26435149, now seen corresponding path program 6 times [2025-02-06 19:01:03,065 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:03,065 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [743816750] [2025-02-06 19:01:03,065 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-02-06 19:01:03,065 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:03,069 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 110 statements into 12 equivalence classes. [2025-02-06 19:01:03,078 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) and asserted 85 of 110 statements. [2025-02-06 19:01:03,078 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2025-02-06 19:01:03,078 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:03,241 INFO L134 CoverageAnalysis]: Checked inductivity of 617 backedges. 170 proven. 56 refuted. 0 times theorem prover too weak. 391 trivial. 0 not checked. [2025-02-06 19:01:03,241 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:03,241 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [743816750] [2025-02-06 19:01:03,241 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [743816750] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:03,242 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [543547107] [2025-02-06 19:01:03,242 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-02-06 19:01:03,242 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:03,242 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:03,244 INFO L229 MonitoredProcess]: Starting monitored process 168 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:03,246 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (168)] Waiting until timeout for monitored process [2025-02-06 19:01:03,298 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 110 statements into 12 equivalence classes. [2025-02-06 19:01:03,319 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) and asserted 85 of 110 statements. [2025-02-06 19:01:03,319 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2025-02-06 19:01:03,319 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:03,320 INFO L256 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 13 conjuncts are in the unsatisfiable core [2025-02-06 19:01:03,322 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:03,366 INFO L134 CoverageAnalysis]: Checked inductivity of 617 backedges. 123 proven. 52 refuted. 0 times theorem prover too weak. 442 trivial. 0 not checked. [2025-02-06 19:01:03,366 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:03,586 INFO L134 CoverageAnalysis]: Checked inductivity of 617 backedges. 123 proven. 53 refuted. 0 times theorem prover too weak. 441 trivial. 0 not checked. [2025-02-06 19:01:03,586 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [543547107] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:03,586 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:03,586 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 10, 11] total 19 [2025-02-06 19:01:03,587 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1654648695] [2025-02-06 19:01:03,587 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:03,587 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:01:03,587 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:03,587 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2025-02-06 19:01:03,587 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=322, Unknown=0, NotChecked=0, Total=380 [2025-02-06 19:01:03,587 INFO L87 Difference]: Start difference. First operand 1179 states and 1596 transitions. cyclomatic complexity: 446 Second operand has 20 states, 15 states have (on average 3.2666666666666666) internal successors, (49), 19 states have internal predecessors, (49), 11 states have call successors, (19), 1 states have call predecessors, (19), 5 states have return successors, (19), 7 states have call predecessors, (19), 11 states have call successors, (19) [2025-02-06 19:01:04,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:04,034 INFO L93 Difference]: Finished difference Result 1295 states and 1779 transitions. [2025-02-06 19:01:04,034 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1295 states and 1779 transitions. [2025-02-06 19:01:04,038 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 110 [2025-02-06 19:01:04,043 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1295 states to 1293 states and 1777 transitions. [2025-02-06 19:01:04,043 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 402 [2025-02-06 19:01:04,043 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 402 [2025-02-06 19:01:04,043 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1293 states and 1777 transitions. [2025-02-06 19:01:04,043 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:04,043 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1293 states and 1777 transitions. [2025-02-06 19:01:04,044 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1293 states and 1777 transitions. [2025-02-06 19:01:04,055 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1293 to 1215. [2025-02-06 19:01:04,056 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1215 states, 809 states have (on average 1.045735475896168) internal successors, (846), 802 states have internal predecessors, (846), 220 states have call successors, (241), 137 states have call predecessors, (241), 186 states have return successors, (562), 275 states have call predecessors, (562), 220 states have call successors, (562) [2025-02-06 19:01:04,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1215 states to 1215 states and 1649 transitions. [2025-02-06 19:01:04,059 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1215 states and 1649 transitions. [2025-02-06 19:01:04,060 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2025-02-06 19:01:04,060 INFO L432 stractBuchiCegarLoop]: Abstraction has 1215 states and 1649 transitions. [2025-02-06 19:01:04,060 INFO L338 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2025-02-06 19:01:04,060 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1215 states and 1649 transitions. [2025-02-06 19:01:04,062 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 89 [2025-02-06 19:01:04,062 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:04,062 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:04,063 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 11, 7, 4, 4, 4, 4, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:04,063 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [29, 29, 17, 17, 17, 17, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:04,063 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" [2025-02-06 19:01:04,064 INFO L754 eck$LassoCheckResult]: Loop: "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" [2025-02-06 19:01:04,064 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:04,064 INFO L85 PathProgramCache]: Analyzing trace with hash -1617210110, now seen corresponding path program 7 times [2025-02-06 19:01:04,064 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:04,064 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1192628681] [2025-02-06 19:01:04,064 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-02-06 19:01:04,064 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:04,068 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 78 statements into 1 equivalence classes. [2025-02-06 19:01:04,071 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 78 of 78 statements. [2025-02-06 19:01:04,071 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:04,071 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:04,139 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 63 proven. 11 refuted. 0 times theorem prover too weak. 170 trivial. 0 not checked. [2025-02-06 19:01:04,140 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:04,140 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1192628681] [2025-02-06 19:01:04,140 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1192628681] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:04,140 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [373503924] [2025-02-06 19:01:04,140 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-02-06 19:01:04,140 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:04,140 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:04,142 INFO L229 MonitoredProcess]: Starting monitored process 169 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:04,144 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (169)] Waiting until timeout for monitored process [2025-02-06 19:01:04,195 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 78 statements into 1 equivalence classes. [2025-02-06 19:01:04,232 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 78 of 78 statements. [2025-02-06 19:01:04,232 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:04,232 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:04,233 INFO L256 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 9 conjuncts are in the unsatisfiable core [2025-02-06 19:01:04,234 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:04,266 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 63 proven. 10 refuted. 0 times theorem prover too weak. 171 trivial. 0 not checked. [2025-02-06 19:01:04,266 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:04,401 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 63 proven. 11 refuted. 0 times theorem prover too weak. 170 trivial. 0 not checked. [2025-02-06 19:01:04,401 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [373503924] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:04,401 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:04,402 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 7, 8] total 11 [2025-02-06 19:01:04,402 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [596385358] [2025-02-06 19:01:04,402 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:04,402 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:01:04,402 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:04,402 INFO L85 PathProgramCache]: Analyzing trace with hash -1910815948, now seen corresponding path program 7 times [2025-02-06 19:01:04,402 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:04,402 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [746418972] [2025-02-06 19:01:04,403 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-02-06 19:01:04,403 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:04,408 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 184 statements into 1 equivalence classes. [2025-02-06 19:01:04,416 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 184 of 184 statements. [2025-02-06 19:01:04,416 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:04,416 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:04,588 INFO L134 CoverageAnalysis]: Checked inductivity of 1933 backedges. 267 proven. 173 refuted. 0 times theorem prover too weak. 1493 trivial. 0 not checked. [2025-02-06 19:01:04,588 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:04,588 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [746418972] [2025-02-06 19:01:04,588 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [746418972] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:04,588 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1552199371] [2025-02-06 19:01:04,588 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-02-06 19:01:04,588 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:04,588 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:04,591 INFO L229 MonitoredProcess]: Starting monitored process 170 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:04,592 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (170)] Waiting until timeout for monitored process [2025-02-06 19:01:04,652 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 184 statements into 1 equivalence classes. [2025-02-06 19:01:04,684 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 184 of 184 statements. [2025-02-06 19:01:04,684 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:04,684 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:04,689 INFO L256 TraceCheckSpWp]: Trace formula consists of 420 conjuncts, 15 conjuncts are in the unsatisfiable core [2025-02-06 19:01:04,691 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:04,763 INFO L134 CoverageAnalysis]: Checked inductivity of 1933 backedges. 1088 proven. 72 refuted. 0 times theorem prover too weak. 773 trivial. 0 not checked. [2025-02-06 19:01:04,763 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:05,206 INFO L134 CoverageAnalysis]: Checked inductivity of 1933 backedges. 132 proven. 484 refuted. 0 times theorem prover too weak. 1317 trivial. 0 not checked. [2025-02-06 19:01:05,206 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1552199371] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:05,207 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:05,207 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 11, 14] total 24 [2025-02-06 19:01:05,207 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [744812904] [2025-02-06 19:01:05,207 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:05,207 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:01:05,207 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:05,207 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2025-02-06 19:01:05,208 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2025-02-06 19:01:05,208 INFO L87 Difference]: Start difference. First operand 1215 states and 1649 transitions. cyclomatic complexity: 463 Second operand has 12 states, 10 states have (on average 3.6) internal successors, (36), 10 states have internal predecessors, (36), 7 states have call successors, (12), 1 states have call predecessors, (12), 3 states have return successors, (12), 6 states have call predecessors, (12), 7 states have call successors, (12) [2025-02-06 19:01:05,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:05,364 INFO L93 Difference]: Finished difference Result 1372 states and 1930 transitions. [2025-02-06 19:01:05,364 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1372 states and 1930 transitions. [2025-02-06 19:01:05,369 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 117 [2025-02-06 19:01:05,374 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1372 states to 1351 states and 1894 transitions. [2025-02-06 19:01:05,374 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 433 [2025-02-06 19:01:05,374 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 433 [2025-02-06 19:01:05,374 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1351 states and 1894 transitions. [2025-02-06 19:01:05,374 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:05,374 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1351 states and 1894 transitions. [2025-02-06 19:01:05,375 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1351 states and 1894 transitions. [2025-02-06 19:01:05,386 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1351 to 1277. [2025-02-06 19:01:05,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1277 states, 854 states have (on average 1.0468384074941453) internal successors, (894), 844 states have internal predecessors, (894), 237 states have call successors, (258), 137 states have call predecessors, (258), 186 states have return successors, (594), 295 states have call predecessors, (594), 237 states have call successors, (594) [2025-02-06 19:01:05,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1277 states to 1277 states and 1746 transitions. [2025-02-06 19:01:05,390 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1277 states and 1746 transitions. [2025-02-06 19:01:05,391 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2025-02-06 19:01:05,391 INFO L432 stractBuchiCegarLoop]: Abstraction has 1277 states and 1746 transitions. [2025-02-06 19:01:05,391 INFO L338 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2025-02-06 19:01:05,391 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1277 states and 1746 transitions. [2025-02-06 19:01:05,394 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 89 [2025-02-06 19:01:05,394 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:05,394 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:05,395 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [15, 15, 9, 6, 6, 6, 6, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:05,395 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [11, 11, 8, 8, 8, 8, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:05,395 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:05,395 INFO L754 eck$LassoCheckResult]: Loop: "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:05,395 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:05,395 INFO L85 PathProgramCache]: Analyzing trace with hash 2061417269, now seen corresponding path program 3 times [2025-02-06 19:01:05,395 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:05,396 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1423618116] [2025-02-06 19:01:05,396 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:05,396 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:05,400 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 98 statements into 9 equivalence classes. [2025-02-06 19:01:05,409 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:05,409 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2025-02-06 19:01:05,410 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:01:05,410 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [420567787] [2025-02-06 19:01:05,410 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:05,410 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:05,411 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:05,413 INFO L229 MonitoredProcess]: Starting monitored process 171 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:05,415 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (171)] Waiting until timeout for monitored process [2025-02-06 19:01:05,476 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 98 statements into 9 equivalence classes. [2025-02-06 19:01:05,502 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:05,502 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2025-02-06 19:01:05,502 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:05,502 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:01:05,512 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 98 statements into 1 equivalence classes. [2025-02-06 19:01:05,522 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:05,522 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:05,522 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:05,538 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:01:05,539 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:05,539 INFO L85 PathProgramCache]: Analyzing trace with hash 2026032404, now seen corresponding path program 8 times [2025-02-06 19:01:05,539 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:05,540 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [252810392] [2025-02-06 19:01:05,540 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:01:05,540 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:05,544 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 68 statements into 2 equivalence classes. [2025-02-06 19:01:05,547 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 68 of 68 statements. [2025-02-06 19:01:05,548 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:01:05,548 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:05,651 INFO L134 CoverageAnalysis]: Checked inductivity of 276 backedges. 110 proven. 78 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2025-02-06 19:01:05,651 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:05,651 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [252810392] [2025-02-06 19:01:05,651 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [252810392] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:05,651 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1942867943] [2025-02-06 19:01:05,651 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:01:05,651 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:05,652 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:05,654 INFO L229 MonitoredProcess]: Starting monitored process 172 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:05,655 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (172)] Waiting until timeout for monitored process [2025-02-06 19:01:05,713 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 68 statements into 2 equivalence classes. [2025-02-06 19:01:05,727 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 68 of 68 statements. [2025-02-06 19:01:05,728 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:01:05,728 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:05,729 INFO L256 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 23 conjuncts are in the unsatisfiable core [2025-02-06 19:01:05,730 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:05,835 INFO L134 CoverageAnalysis]: Checked inductivity of 276 backedges. 69 proven. 118 refuted. 0 times theorem prover too weak. 89 trivial. 0 not checked. [2025-02-06 19:01:05,835 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:06,825 INFO L134 CoverageAnalysis]: Checked inductivity of 276 backedges. 66 proven. 149 refuted. 0 times theorem prover too weak. 61 trivial. 0 not checked. [2025-02-06 19:01:06,826 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1942867943] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:06,826 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:06,826 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 14, 20] total 26 [2025-02-06 19:01:06,826 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [878821188] [2025-02-06 19:01:06,826 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:06,826 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:01:06,826 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:06,826 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2025-02-06 19:01:06,826 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=126, Invalid=576, Unknown=0, NotChecked=0, Total=702 [2025-02-06 19:01:06,826 INFO L87 Difference]: Start difference. First operand 1277 states and 1746 transitions. cyclomatic complexity: 498 Second operand has 27 states, 22 states have (on average 2.409090909090909) internal successors, (53), 22 states have internal predecessors, (53), 15 states have call successors, (16), 1 states have call predecessors, (16), 10 states have return successors, (22), 14 states have call predecessors, (22), 15 states have call successors, (22) [2025-02-06 19:01:07,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:07,487 INFO L93 Difference]: Finished difference Result 2073 states and 3492 transitions. [2025-02-06 19:01:07,487 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 2073 states and 3492 transitions. [2025-02-06 19:01:07,497 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 202 [2025-02-06 19:01:07,506 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 2073 states to 2020 states and 3433 transitions. [2025-02-06 19:01:07,506 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 615 [2025-02-06 19:01:07,507 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 615 [2025-02-06 19:01:07,507 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2020 states and 3433 transitions. [2025-02-06 19:01:07,507 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:07,507 INFO L218 hiAutomatonCegarLoop]: Abstraction has 2020 states and 3433 transitions. [2025-02-06 19:01:07,508 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2020 states and 3433 transitions. [2025-02-06 19:01:07,536 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2020 to 1566. [2025-02-06 19:01:07,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1566 states, 1012 states have (on average 1.0395256916996047) internal successors, (1052), 998 states have internal predecessors, (1052), 357 states have call successors, (378), 207 states have call predecessors, (378), 197 states have return successors, (1008), 360 states have call predecessors, (1008), 357 states have call successors, (1008) [2025-02-06 19:01:07,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1566 states to 1566 states and 2438 transitions. [2025-02-06 19:01:07,542 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1566 states and 2438 transitions. [2025-02-06 19:01:07,542 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2025-02-06 19:01:07,543 INFO L432 stractBuchiCegarLoop]: Abstraction has 1566 states and 2438 transitions. [2025-02-06 19:01:07,543 INFO L338 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2025-02-06 19:01:07,543 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 1566 states and 2438 transitions. [2025-02-06 19:01:07,547 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 113 [2025-02-06 19:01:07,547 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:07,547 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:07,548 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [15, 15, 9, 6, 6, 6, 6, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:07,548 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [15, 15, 12, 12, 12, 12, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:07,548 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:07,548 INFO L754 eck$LassoCheckResult]: Loop: "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:07,549 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:07,549 INFO L85 PathProgramCache]: Analyzing trace with hash 2061417269, now seen corresponding path program 4 times [2025-02-06 19:01:07,549 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:07,549 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1107241013] [2025-02-06 19:01:07,549 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-02-06 19:01:07,549 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:07,555 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 98 statements into 2 equivalence classes. [2025-02-06 19:01:07,577 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:07,578 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-02-06 19:01:07,578 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:01:07,579 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [278211279] [2025-02-06 19:01:07,579 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-02-06 19:01:07,579 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:07,579 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:07,582 INFO L229 MonitoredProcess]: Starting monitored process 173 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:07,583 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (173)] Waiting until timeout for monitored process [2025-02-06 19:01:07,650 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 98 statements into 2 equivalence classes. [2025-02-06 19:01:07,678 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:07,679 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-02-06 19:01:07,679 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:07,679 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:01:07,687 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 98 statements into 1 equivalence classes. [2025-02-06 19:01:07,698 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:07,698 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:07,698 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:07,716 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:01:07,717 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:07,717 INFO L85 PathProgramCache]: Analyzing trace with hash 577121940, now seen corresponding path program 9 times [2025-02-06 19:01:07,717 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:07,717 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1661886258] [2025-02-06 19:01:07,717 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:07,717 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:07,721 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 92 statements into 19 equivalence classes. [2025-02-06 19:01:07,734 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 19 check-sat command(s) and asserted 92 of 92 statements. [2025-02-06 19:01:07,735 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 19 check-sat command(s) [2025-02-06 19:01:07,735 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:01:07,735 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1223350753] [2025-02-06 19:01:07,735 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:07,735 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:07,735 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:07,738 INFO L229 MonitoredProcess]: Starting monitored process 174 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:07,739 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (174)] Waiting until timeout for monitored process [2025-02-06 19:01:07,804 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 92 statements into 19 equivalence classes. [2025-02-06 19:01:07,955 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 19 check-sat command(s) and asserted 92 of 92 statements. [2025-02-06 19:01:07,955 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 19 check-sat command(s) [2025-02-06 19:01:07,955 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:07,955 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:01:07,964 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 92 statements into 1 equivalence classes. [2025-02-06 19:01:07,994 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 92 of 92 statements. [2025-02-06 19:01:07,995 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:07,995 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:08,005 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:01:08,005 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:08,005 INFO L85 PathProgramCache]: Analyzing trace with hash -1482345528, now seen corresponding path program 5 times [2025-02-06 19:01:08,005 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:08,005 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1050645379] [2025-02-06 19:01:08,005 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-02-06 19:01:08,005 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:08,011 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 190 statements into 19 equivalence classes. [2025-02-06 19:01:08,032 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 19 check-sat command(s) and asserted 190 of 190 statements. [2025-02-06 19:01:08,032 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 19 check-sat command(s) [2025-02-06 19:01:08,032 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:08,696 INFO L134 CoverageAnalysis]: Checked inductivity of 2072 backedges. 645 proven. 459 refuted. 0 times theorem prover too weak. 968 trivial. 0 not checked. [2025-02-06 19:01:08,696 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:08,696 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1050645379] [2025-02-06 19:01:08,696 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1050645379] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:08,696 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1576999751] [2025-02-06 19:01:08,697 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-02-06 19:01:08,697 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:08,697 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:08,699 INFO L229 MonitoredProcess]: Starting monitored process 175 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:08,701 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (175)] Waiting until timeout for monitored process [2025-02-06 19:01:08,773 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 190 statements into 19 equivalence classes. [2025-02-06 19:01:08,818 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 19 check-sat command(s) and asserted 190 of 190 statements. [2025-02-06 19:01:08,818 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 19 check-sat command(s) [2025-02-06 19:01:08,818 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:08,820 INFO L256 TraceCheckSpWp]: Trace formula consists of 429 conjuncts, 26 conjuncts are in the unsatisfiable core [2025-02-06 19:01:08,822 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:09,063 INFO L134 CoverageAnalysis]: Checked inductivity of 2072 backedges. 606 proven. 115 refuted. 0 times theorem prover too weak. 1351 trivial. 0 not checked. [2025-02-06 19:01:09,064 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:10,127 INFO L134 CoverageAnalysis]: Checked inductivity of 2072 backedges. 600 proven. 146 refuted. 0 times theorem prover too weak. 1326 trivial. 0 not checked. [2025-02-06 19:01:10,128 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1576999751] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:10,128 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:10,128 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 17, 22] total 48 [2025-02-06 19:01:10,128 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1756307675] [2025-02-06 19:01:10,128 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:10,536 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:01:10,536 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:01:10,536 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:01:10,536 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:01:10,536 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:01:10,536 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:10,536 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:01:10,536 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:01:10,536 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration23_Loop [2025-02-06 19:01:10,536 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:01:10,536 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:01:10,537 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,539 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,540 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,543 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,550 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,558 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,560 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,561 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,563 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,564 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,566 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,567 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,615 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:01:10,615 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:01:10,615 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:10,615 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:10,618 INFO L229 MonitoredProcess]: Starting monitored process 176 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:10,619 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (176)] Waiting until timeout for monitored process [2025-02-06 19:01:10,619 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:10,619 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:10,630 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:10,630 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#in~n#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#in~n#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:10,636 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (176)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:10,636 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:10,636 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:10,638 INFO L229 MonitoredProcess]: Starting monitored process 177 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:10,639 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (177)] Waiting until timeout for monitored process [2025-02-06 19:01:10,640 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:10,640 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:10,650 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:10,650 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_#t~post9#1=0} Honda state: {ULTIMATE.start_main_#t~post9#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:10,656 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (177)] Ended with exit code 0 [2025-02-06 19:01:10,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:10,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:10,658 INFO L229 MonitoredProcess]: Starting monitored process 178 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:10,659 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (178)] Waiting until timeout for monitored process [2025-02-06 19:01:10,659 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:10,659 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:10,676 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (178)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:10,677 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:10,677 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:10,679 INFO L229 MonitoredProcess]: Starting monitored process 179 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:10,679 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (179)] Waiting until timeout for monitored process [2025-02-06 19:01:10,680 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:01:10,680 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:10,692 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:01:10,697 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (179)] Ended with exit code 0 [2025-02-06 19:01:10,697 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:01:10,698 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:01:10,698 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:01:10,698 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:01:10,698 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:01:10,698 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:10,698 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:01:10,698 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:01:10,698 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration23_Loop [2025-02-06 19:01:10,698 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:01:10,698 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:01:10,698 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,700 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,702 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,705 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,706 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,707 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,709 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,710 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,711 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,713 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,714 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,715 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:10,758 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:01:10,758 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:01:10,758 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:10,758 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:10,760 INFO L229 MonitoredProcess]: Starting monitored process 180 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:10,761 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (180)] Waiting until timeout for monitored process [2025-02-06 19:01:10,762 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:10,771 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:10,771 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:10,771 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:10,771 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:10,771 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:10,772 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:10,772 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:10,773 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:10,778 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (180)] Ended with exit code 0 [2025-02-06 19:01:10,778 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:10,778 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:10,780 INFO L229 MonitoredProcess]: Starting monitored process 181 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:10,781 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (181)] Waiting until timeout for monitored process [2025-02-06 19:01:10,782 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:10,792 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:10,792 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:10,792 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:10,792 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:10,792 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:10,792 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:10,792 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:10,793 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:10,799 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (181)] Ended with exit code 0 [2025-02-06 19:01:10,799 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:10,799 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:10,801 INFO L229 MonitoredProcess]: Starting monitored process 182 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:10,802 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (182)] Waiting until timeout for monitored process [2025-02-06 19:01:10,803 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:10,813 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:10,813 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:10,813 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:10,813 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:10,813 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:10,813 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:10,813 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:10,815 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:01:10,818 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:01:10,818 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:01:10,818 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:10,818 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:10,820 INFO L229 MonitoredProcess]: Starting monitored process 183 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:10,821 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (183)] Waiting until timeout for monitored process [2025-02-06 19:01:10,822 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:01:10,822 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:01:10,822 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:01:10,822 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 11 Supporting invariants [] [2025-02-06 19:01:10,827 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (182)] Ended with exit code 0 [2025-02-06 19:01:10,828 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:01:10,835 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:10,856 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 98 statements into 1 equivalence classes. [2025-02-06 19:01:10,906 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:10,906 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:10,906 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:10,910 INFO L256 TraceCheckSpWp]: Trace formula consists of 653 conjuncts, 32 conjuncts are in the unsatisfiable core [2025-02-06 19:01:10,912 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:11,269 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 92 statements into 1 equivalence classes. [2025-02-06 19:01:11,311 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 92 of 92 statements. [2025-02-06 19:01:11,311 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:11,311 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:11,315 INFO L256 TraceCheckSpWp]: Trace formula consists of 618 conjuncts, 50 conjuncts are in the unsatisfiable core [2025-02-06 19:01:11,317 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:11,571 INFO L134 CoverageAnalysis]: Checked inductivity of 552 backedges. 0 proven. 297 refuted. 0 times theorem prover too weak. 255 trivial. 0 not checked. [2025-02-06 19:01:11,572 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 13 loop predicates [2025-02-06 19:01:11,572 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 1566 states and 2438 transitions. cyclomatic complexity: 901 Second operand has 16 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 6 states have call successors, (12), 2 states have call predecessors, (12), 9 states have return successors, (18), 11 states have call predecessors, (18), 6 states have call successors, (18) [2025-02-06 19:01:11,887 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (183)] Ended with exit code 0 [2025-02-06 19:01:11,906 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 1566 states and 2438 transitions. cyclomatic complexity: 901. Second operand has 16 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 6 states have call successors, (12), 2 states have call predecessors, (12), 9 states have return successors, (18), 11 states have call predecessors, (18), 6 states have call successors, (18) Result 3255 states and 4923 transitions. Complement of second has 97 states. [2025-02-06 19:01:11,907 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 21 states 2 stem states 18 non-accepting loop states 1 accepting loop states [2025-02-06 19:01:11,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 14 states have (on average 3.142857142857143) internal successors, (44), 14 states have internal predecessors, (44), 6 states have call successors, (12), 2 states have call predecessors, (12), 9 states have return successors, (18), 11 states have call predecessors, (18), 6 states have call successors, (18) [2025-02-06 19:01:11,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 87 transitions. [2025-02-06 19:01:11,908 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 21 states and 87 transitions. Stem has 98 letters. Loop has 92 letters. [2025-02-06 19:01:11,908 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:01:11,908 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 21 states and 87 transitions. Stem has 190 letters. Loop has 92 letters. [2025-02-06 19:01:11,909 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:01:11,909 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 21 states and 87 transitions. Stem has 98 letters. Loop has 184 letters. [2025-02-06 19:01:11,909 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:01:11,909 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3255 states and 4923 transitions. [2025-02-06 19:01:11,920 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 113 [2025-02-06 19:01:11,929 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3255 states to 2222 states and 3444 transitions. [2025-02-06 19:01:11,929 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 483 [2025-02-06 19:01:11,930 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 488 [2025-02-06 19:01:11,930 INFO L73 IsDeterministic]: Start isDeterministic. Operand 2222 states and 3444 transitions. [2025-02-06 19:01:11,930 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:11,930 INFO L218 hiAutomatonCegarLoop]: Abstraction has 2222 states and 3444 transitions. [2025-02-06 19:01:11,931 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2222 states and 3444 transitions. [2025-02-06 19:01:11,949 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2222 to 1950. [2025-02-06 19:01:11,951 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1950 states, 1258 states have (on average 1.0333863275039745) internal successors, (1300), 1244 states have internal predecessors, (1300), 419 states have call successors, (450), 261 states have call predecessors, (450), 273 states have return successors, (1266), 444 states have call predecessors, (1266), 419 states have call successors, (1266) [2025-02-06 19:01:11,955 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1950 states to 1950 states and 3016 transitions. [2025-02-06 19:01:11,955 INFO L240 hiAutomatonCegarLoop]: Abstraction has 1950 states and 3016 transitions. [2025-02-06 19:01:11,955 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:11,956 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 49 interpolants. [2025-02-06 19:01:11,956 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=258, Invalid=2094, Unknown=0, NotChecked=0, Total=2352 [2025-02-06 19:01:11,956 INFO L87 Difference]: Start difference. First operand 1950 states and 3016 transitions. Second operand has 49 states, 37 states have (on average 2.972972972972973) internal successors, (110), 45 states have internal predecessors, (110), 27 states have call successors, (47), 1 states have call predecessors, (47), 11 states have return successors, (52), 26 states have call predecessors, (52), 27 states have call successors, (52) [2025-02-06 19:01:14,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:14,496 INFO L93 Difference]: Finished difference Result 3510 states and 6315 transitions. [2025-02-06 19:01:14,496 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3510 states and 6315 transitions. [2025-02-06 19:01:14,514 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 422 [2025-02-06 19:01:14,535 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3510 states to 3060 states and 5508 transitions. [2025-02-06 19:01:14,535 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 858 [2025-02-06 19:01:14,536 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 862 [2025-02-06 19:01:14,536 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3060 states and 5508 transitions. [2025-02-06 19:01:14,536 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:14,536 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3060 states and 5508 transitions. [2025-02-06 19:01:14,537 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3060 states and 5508 transitions. [2025-02-06 19:01:14,579 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3060 to 2501. [2025-02-06 19:01:14,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2501 states, 1550 states have (on average 1.038709677419355) internal successors, (1610), 1530 states have internal predecessors, (1610), 666 states have call successors, (728), 276 states have call predecessors, (728), 285 states have return successors, (2047), 694 states have call predecessors, (2047), 666 states have call successors, (2047) [2025-02-06 19:01:14,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2501 states to 2501 states and 4385 transitions. [2025-02-06 19:01:14,589 INFO L240 hiAutomatonCegarLoop]: Abstraction has 2501 states and 4385 transitions. [2025-02-06 19:01:14,593 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 81 states. [2025-02-06 19:01:14,593 INFO L432 stractBuchiCegarLoop]: Abstraction has 2501 states and 4385 transitions. [2025-02-06 19:01:14,593 INFO L338 stractBuchiCegarLoop]: ======== Iteration 24 ============ [2025-02-06 19:01:14,593 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2501 states and 4385 transitions. [2025-02-06 19:01:14,600 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 294 [2025-02-06 19:01:14,600 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:14,600 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:14,601 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [18, 18, 12, 6, 6, 6, 6, 5, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:14,601 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [37, 37, 25, 25, 25, 25, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:14,602 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" [2025-02-06 19:01:14,602 INFO L754 eck$LassoCheckResult]: Loop: "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" [2025-02-06 19:01:14,602 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:14,602 INFO L85 PathProgramCache]: Analyzing trace with hash 722375786, now seen corresponding path program 8 times [2025-02-06 19:01:14,602 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:14,602 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [664127176] [2025-02-06 19:01:14,603 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:01:14,603 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:14,608 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 125 statements into 2 equivalence classes. [2025-02-06 19:01:14,630 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 125 of 125 statements. [2025-02-06 19:01:14,631 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:01:14,631 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:14,775 INFO L134 CoverageAnalysis]: Checked inductivity of 689 backedges. 1 proven. 35 refuted. 0 times theorem prover too weak. 653 trivial. 0 not checked. [2025-02-06 19:01:14,775 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:14,775 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [664127176] [2025-02-06 19:01:14,775 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [664127176] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:14,775 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2033392455] [2025-02-06 19:01:14,775 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:01:14,776 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:14,776 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:14,778 INFO L229 MonitoredProcess]: Starting monitored process 184 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:14,780 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (184)] Waiting until timeout for monitored process [2025-02-06 19:01:14,858 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 125 statements into 2 equivalence classes. [2025-02-06 19:01:14,883 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 125 of 125 statements. [2025-02-06 19:01:14,883 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:01:14,883 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:14,886 INFO L256 TraceCheckSpWp]: Trace formula consists of 307 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-02-06 19:01:14,888 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:15,004 INFO L134 CoverageAnalysis]: Checked inductivity of 689 backedges. 2 proven. 35 refuted. 0 times theorem prover too weak. 652 trivial. 0 not checked. [2025-02-06 19:01:15,004 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:15,109 INFO L134 CoverageAnalysis]: Checked inductivity of 689 backedges. 1 proven. 35 refuted. 0 times theorem prover too weak. 653 trivial. 0 not checked. [2025-02-06 19:01:15,109 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2033392455] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:15,109 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:15,109 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 7, 6] total 11 [2025-02-06 19:01:15,109 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1999526481] [2025-02-06 19:01:15,109 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:15,110 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:01:15,110 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:15,110 INFO L85 PathProgramCache]: Analyzing trace with hash 606421946, now seen corresponding path program 8 times [2025-02-06 19:01:15,110 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:15,110 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [937197777] [2025-02-06 19:01:15,110 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:01:15,110 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:15,117 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 232 statements into 2 equivalence classes. [2025-02-06 19:01:15,126 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 232 of 232 statements. [2025-02-06 19:01:15,126 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:01:15,126 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:15,316 INFO L134 CoverageAnalysis]: Checked inductivity of 3301 backedges. 136 proven. 353 refuted. 0 times theorem prover too weak. 2812 trivial. 0 not checked. [2025-02-06 19:01:15,316 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:15,316 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [937197777] [2025-02-06 19:01:15,316 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [937197777] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:15,316 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [363723787] [2025-02-06 19:01:15,317 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:01:15,317 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:15,317 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:15,319 INFO L229 MonitoredProcess]: Starting monitored process 185 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:15,320 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (185)] Waiting until timeout for monitored process [2025-02-06 19:01:15,404 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 232 statements into 2 equivalence classes. [2025-02-06 19:01:15,444 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 232 of 232 statements. [2025-02-06 19:01:15,444 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:01:15,444 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:15,450 INFO L256 TraceCheckSpWp]: Trace formula consists of 516 conjuncts, 26 conjuncts are in the unsatisfiable core [2025-02-06 19:01:15,454 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:15,639 INFO L134 CoverageAnalysis]: Checked inductivity of 3301 backedges. 1883 proven. 351 refuted. 0 times theorem prover too weak. 1067 trivial. 0 not checked. [2025-02-06 19:01:15,640 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:16,817 INFO L134 CoverageAnalysis]: Checked inductivity of 3301 backedges. 511 proven. 823 refuted. 0 times theorem prover too weak. 1967 trivial. 0 not checked. [2025-02-06 19:01:16,818 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [363723787] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:16,818 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:16,818 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 17, 25] total 38 [2025-02-06 19:01:16,818 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [517024537] [2025-02-06 19:01:16,818 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:16,818 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:01:16,819 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:16,819 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2025-02-06 19:01:16,819 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=88, Unknown=0, NotChecked=0, Total=132 [2025-02-06 19:01:16,819 INFO L87 Difference]: Start difference. First operand 2501 states and 4385 transitions. cyclomatic complexity: 1918 Second operand has 12 states, 11 states have (on average 4.454545454545454) internal successors, (49), 12 states have internal predecessors, (49), 7 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 7 states have call predecessors, (19), 7 states have call successors, (19) [2025-02-06 19:01:17,108 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:17,108 INFO L93 Difference]: Finished difference Result 3262 states and 6264 transitions. [2025-02-06 19:01:17,108 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3262 states and 6264 transitions. [2025-02-06 19:01:17,128 INFO L131 ngComponentsAnalysis]: Automaton has 9 accepting balls. 537 [2025-02-06 19:01:17,150 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3262 states to 3096 states and 5912 transitions. [2025-02-06 19:01:17,150 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1147 [2025-02-06 19:01:17,151 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1148 [2025-02-06 19:01:17,151 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3096 states and 5912 transitions. [2025-02-06 19:01:17,151 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:17,151 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3096 states and 5912 transitions. [2025-02-06 19:01:17,153 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3096 states and 5912 transitions. [2025-02-06 19:01:17,254 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3096 to 2595. [2025-02-06 19:01:17,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2595 states, 1602 states have (on average 1.0399500624219726) internal successors, (1666), 1580 states have internal predecessors, (1666), 711 states have call successors, (772), 273 states have call predecessors, (772), 282 states have return successors, (2220), 741 states have call predecessors, (2220), 711 states have call successors, (2220) [2025-02-06 19:01:17,278 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2595 states to 2595 states and 4658 transitions. [2025-02-06 19:01:17,282 INFO L240 hiAutomatonCegarLoop]: Abstraction has 2595 states and 4658 transitions. [2025-02-06 19:01:17,285 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2025-02-06 19:01:17,285 INFO L432 stractBuchiCegarLoop]: Abstraction has 2595 states and 4658 transitions. [2025-02-06 19:01:17,286 INFO L338 stractBuchiCegarLoop]: ======== Iteration 25 ============ [2025-02-06 19:01:17,287 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2595 states and 4658 transitions. [2025-02-06 19:01:17,341 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 350 [2025-02-06 19:01:17,343 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:17,344 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:17,350 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [25, 25, 15, 10, 10, 10, 10, 6, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1] [2025-02-06 19:01:17,350 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [39, 39, 24, 24, 24, 24, 15, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1] [2025-02-06 19:01:17,351 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" [2025-02-06 19:01:17,351 INFO L754 eck$LassoCheckResult]: Loop: "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume !(main_~k~0#1 <= main_~x~0#1);havoc main_~k~0#1;main_#t~post10#1 := main_~n~0#1;main_~n~0#1 := 1 + main_#t~post10#1;havoc main_#t~post10#1;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" [2025-02-06 19:01:17,352 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:17,352 INFO L85 PathProgramCache]: Analyzing trace with hash 724378359, now seen corresponding path program 9 times [2025-02-06 19:01:17,352 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:17,352 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [597488551] [2025-02-06 19:01:17,352 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:17,352 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:17,365 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 169 statements into 11 equivalence classes. [2025-02-06 19:01:17,401 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) and asserted 169 of 169 statements. [2025-02-06 19:01:17,402 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2025-02-06 19:01:17,402 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:01:17,403 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [961068456] [2025-02-06 19:01:17,403 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:17,403 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:17,404 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:17,409 INFO L229 MonitoredProcess]: Starting monitored process 186 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:17,410 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (186)] Waiting until timeout for monitored process [2025-02-06 19:01:17,505 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 169 statements into 11 equivalence classes. [2025-02-06 19:01:17,603 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) and asserted 169 of 169 statements. [2025-02-06 19:01:17,603 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2025-02-06 19:01:17,603 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:17,603 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:01:17,620 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 169 statements into 1 equivalence classes. [2025-02-06 19:01:17,638 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 169 of 169 statements. [2025-02-06 19:01:17,638 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:17,638 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:17,658 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:01:17,658 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:17,658 INFO L85 PathProgramCache]: Analyzing trace with hash -1287562195, now seen corresponding path program 9 times [2025-02-06 19:01:17,659 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:17,659 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1899384050] [2025-02-06 19:01:17,659 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:17,659 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:17,665 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 246 statements into 39 equivalence classes. [2025-02-06 19:01:17,680 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) and asserted 107 of 246 statements. [2025-02-06 19:01:17,681 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) [2025-02-06 19:01:17,681 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:17,848 INFO L134 CoverageAnalysis]: Checked inductivity of 3571 backedges. 684 proven. 49 refuted. 0 times theorem prover too weak. 2838 trivial. 0 not checked. [2025-02-06 19:01:17,848 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:17,848 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1899384050] [2025-02-06 19:01:17,848 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1899384050] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:17,848 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [622807468] [2025-02-06 19:01:17,849 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:17,849 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:17,849 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:17,852 INFO L229 MonitoredProcess]: Starting monitored process 187 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:17,854 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (187)] Waiting until timeout for monitored process [2025-02-06 19:01:17,955 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 246 statements into 39 equivalence classes. [2025-02-06 19:01:18,030 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) and asserted 107 of 246 statements. [2025-02-06 19:01:18,030 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) [2025-02-06 19:01:18,030 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:18,036 INFO L256 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 18 conjuncts are in the unsatisfiable core [2025-02-06 19:01:18,038 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:18,127 INFO L134 CoverageAnalysis]: Checked inductivity of 3571 backedges. 684 proven. 46 refuted. 0 times theorem prover too weak. 2841 trivial. 0 not checked. [2025-02-06 19:01:18,127 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:18,562 INFO L134 CoverageAnalysis]: Checked inductivity of 3571 backedges. 684 proven. 51 refuted. 0 times theorem prover too weak. 2836 trivial. 0 not checked. [2025-02-06 19:01:18,562 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [622807468] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:18,562 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:18,562 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 12, 15] total 26 [2025-02-06 19:01:18,562 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [781743077] [2025-02-06 19:01:18,563 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:18,563 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:01:18,563 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:18,563 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2025-02-06 19:01:18,563 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=113, Invalid=589, Unknown=0, NotChecked=0, Total=702 [2025-02-06 19:01:18,564 INFO L87 Difference]: Start difference. First operand 2595 states and 4658 transitions. cyclomatic complexity: 2099 Second operand has 27 states, 20 states have (on average 3.05) internal successors, (61), 23 states have internal predecessors, (61), 17 states have call successors, (23), 1 states have call predecessors, (23), 6 states have return successors, (24), 12 states have call predecessors, (24), 17 states have call successors, (24) [2025-02-06 19:01:19,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:19,247 INFO L93 Difference]: Finished difference Result 3439 states and 6564 transitions. [2025-02-06 19:01:19,247 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3439 states and 6564 transitions. [2025-02-06 19:01:19,264 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 721 [2025-02-06 19:01:19,285 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3439 states to 3389 states and 6481 transitions. [2025-02-06 19:01:19,286 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1333 [2025-02-06 19:01:19,287 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1333 [2025-02-06 19:01:19,287 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3389 states and 6481 transitions. [2025-02-06 19:01:19,287 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:19,287 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3389 states and 6481 transitions. [2025-02-06 19:01:19,288 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3389 states and 6481 transitions. [2025-02-06 19:01:19,353 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3389 to 2766. [2025-02-06 19:01:19,356 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2766 states, 1712 states have (on average 1.0373831775700935) internal successors, (1776), 1687 states have internal predecessors, (1776), 772 states have call successors, (833), 273 states have call predecessors, (833), 282 states have return successors, (2503), 805 states have call predecessors, (2503), 772 states have call successors, (2503) [2025-02-06 19:01:19,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2766 states to 2766 states and 5112 transitions. [2025-02-06 19:01:19,366 INFO L240 hiAutomatonCegarLoop]: Abstraction has 2766 states and 5112 transitions. [2025-02-06 19:01:19,366 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 33 states. [2025-02-06 19:01:19,366 INFO L432 stractBuchiCegarLoop]: Abstraction has 2766 states and 5112 transitions. [2025-02-06 19:01:19,367 INFO L338 stractBuchiCegarLoop]: ======== Iteration 26 ============ [2025-02-06 19:01:19,367 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2766 states and 5112 transitions. [2025-02-06 19:01:19,374 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 417 [2025-02-06 19:01:19,374 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:19,374 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:19,375 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [46, 46, 28, 28, 28, 28, 18, 6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:19,375 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [16, 16, 13, 13, 13, 13, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:19,376 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:19,376 INFO L754 eck$LassoCheckResult]: Loop: "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:19,376 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:19,376 INFO L85 PathProgramCache]: Analyzing trace with hash 1198903306, now seen corresponding path program 6 times [2025-02-06 19:01:19,377 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:19,377 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1835024401] [2025-02-06 19:01:19,377 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-02-06 19:01:19,377 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:19,384 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 290 statements into 21 equivalence classes. [2025-02-06 19:01:19,404 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 15 check-sat command(s) and asserted 197 of 290 statements. [2025-02-06 19:01:19,404 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 15 check-sat command(s) [2025-02-06 19:01:19,404 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:19,643 INFO L134 CoverageAnalysis]: Checked inductivity of 4978 backedges. 1040 proven. 167 refuted. 0 times theorem prover too weak. 3771 trivial. 0 not checked. [2025-02-06 19:01:19,643 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:19,644 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1835024401] [2025-02-06 19:01:19,644 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1835024401] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:19,644 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [415432100] [2025-02-06 19:01:19,644 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-02-06 19:01:19,644 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:19,644 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:19,646 INFO L229 MonitoredProcess]: Starting monitored process 188 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:19,647 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (188)] Waiting until timeout for monitored process [2025-02-06 19:01:19,749 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 290 statements into 21 equivalence classes. [2025-02-06 19:01:20,088 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 15 check-sat command(s) and asserted 197 of 290 statements. [2025-02-06 19:01:20,088 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 15 check-sat command(s) [2025-02-06 19:01:20,088 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:20,090 INFO L256 TraceCheckSpWp]: Trace formula consists of 458 conjuncts, 25 conjuncts are in the unsatisfiable core [2025-02-06 19:01:20,095 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:20,225 INFO L134 CoverageAnalysis]: Checked inductivity of 4978 backedges. 1034 proven. 170 refuted. 0 times theorem prover too weak. 3774 trivial. 0 not checked. [2025-02-06 19:01:20,227 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:20,907 INFO L134 CoverageAnalysis]: Checked inductivity of 4978 backedges. 1034 proven. 183 refuted. 0 times theorem prover too weak. 3761 trivial. 0 not checked. [2025-02-06 19:01:20,907 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [415432100] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:20,907 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:20,907 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14, 19] total 24 [2025-02-06 19:01:20,907 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1872347184] [2025-02-06 19:01:20,908 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:20,908 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:01:20,908 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:20,909 INFO L85 PathProgramCache]: Analyzing trace with hash 543127534, now seen corresponding path program 10 times [2025-02-06 19:01:20,909 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:20,909 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1614364602] [2025-02-06 19:01:20,909 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-02-06 19:01:20,909 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:20,913 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 98 statements into 2 equivalence classes. [2025-02-06 19:01:20,916 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:20,917 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) [2025-02-06 19:01:20,917 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:21,174 INFO L134 CoverageAnalysis]: Checked inductivity of 636 backedges. 107 proven. 345 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2025-02-06 19:01:21,175 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:21,175 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1614364602] [2025-02-06 19:01:21,175 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1614364602] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:21,175 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [360902523] [2025-02-06 19:01:21,175 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-02-06 19:01:21,175 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:21,175 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:21,178 INFO L229 MonitoredProcess]: Starting monitored process 189 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:21,179 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (189)] Waiting until timeout for monitored process [2025-02-06 19:01:21,273 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 98 statements into 2 equivalence classes. [2025-02-06 19:01:21,290 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) and asserted 98 of 98 statements. [2025-02-06 19:01:21,290 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 1 check-sat command(s) [2025-02-06 19:01:21,290 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:21,291 INFO L256 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 33 conjuncts are in the unsatisfiable core [2025-02-06 19:01:21,293 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:21,384 INFO L134 CoverageAnalysis]: Checked inductivity of 636 backedges. 101 proven. 334 refuted. 0 times theorem prover too weak. 201 trivial. 0 not checked. [2025-02-06 19:01:21,384 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:23,619 INFO L134 CoverageAnalysis]: Checked inductivity of 636 backedges. 101 proven. 412 refuted. 0 times theorem prover too weak. 123 trivial. 0 not checked. [2025-02-06 19:01:23,619 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [360902523] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:23,619 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:23,619 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 19, 31] total 36 [2025-02-06 19:01:23,619 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1086036502] [2025-02-06 19:01:23,620 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:23,620 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:01:23,620 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:23,620 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2025-02-06 19:01:23,620 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=225, Invalid=1107, Unknown=0, NotChecked=0, Total=1332 [2025-02-06 19:01:23,621 INFO L87 Difference]: Start difference. First operand 2766 states and 5112 transitions. cyclomatic complexity: 2382 Second operand has 37 states, 33 states have (on average 2.212121212121212) internal successors, (73), 32 states have internal predecessors, (73), 20 states have call successors, (20), 1 states have call predecessors, (20), 15 states have return successors, (31), 18 states have call predecessors, (31), 20 states have call successors, (31) [2025-02-06 19:01:24,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:24,644 INFO L93 Difference]: Finished difference Result 3600 states and 7664 transitions. [2025-02-06 19:01:24,644 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 3600 states and 7664 transitions. [2025-02-06 19:01:24,666 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 609 [2025-02-06 19:01:24,700 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 3600 states to 3586 states and 7650 transitions. [2025-02-06 19:01:24,700 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1151 [2025-02-06 19:01:24,702 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1151 [2025-02-06 19:01:24,702 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3586 states and 7650 transitions. [2025-02-06 19:01:24,702 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:24,702 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3586 states and 7650 transitions. [2025-02-06 19:01:24,704 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3586 states and 7650 transitions. [2025-02-06 19:01:24,764 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3586 to 2861. [2025-02-06 19:01:24,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2861 states, 1754 states have (on average 1.0364880273660204) internal successors, (1818), 1727 states have internal predecessors, (1818), 822 states have call successors, (883), 292 states have call predecessors, (883), 285 states have return successors, (2947), 841 states have call predecessors, (2947), 822 states have call successors, (2947) [2025-02-06 19:01:24,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2861 states to 2861 states and 5648 transitions. [2025-02-06 19:01:24,777 INFO L240 hiAutomatonCegarLoop]: Abstraction has 2861 states and 5648 transitions. [2025-02-06 19:01:24,780 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2025-02-06 19:01:24,780 INFO L432 stractBuchiCegarLoop]: Abstraction has 2861 states and 5648 transitions. [2025-02-06 19:01:24,780 INFO L338 stractBuchiCegarLoop]: ======== Iteration 27 ============ [2025-02-06 19:01:24,780 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 2861 states and 5648 transitions. [2025-02-06 19:01:24,790 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 436 [2025-02-06 19:01:24,790 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:24,790 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:24,792 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [46, 46, 28, 28, 28, 28, 18, 6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:24,792 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [17, 17, 14, 14, 14, 14, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:24,792 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:24,792 INFO L754 eck$LassoCheckResult]: Loop: "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:24,793 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:24,793 INFO L85 PathProgramCache]: Analyzing trace with hash 1198903306, now seen corresponding path program 7 times [2025-02-06 19:01:24,793 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:24,793 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1884236206] [2025-02-06 19:01:24,793 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-02-06 19:01:24,793 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:24,801 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 290 statements into 1 equivalence classes. [2025-02-06 19:01:24,810 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 290 of 290 statements. [2025-02-06 19:01:24,811 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:24,811 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:25,085 INFO L134 CoverageAnalysis]: Checked inductivity of 4978 backedges. 541 proven. 210 refuted. 0 times theorem prover too weak. 4227 trivial. 0 not checked. [2025-02-06 19:01:25,086 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:25,086 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1884236206] [2025-02-06 19:01:25,086 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1884236206] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:25,086 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1001054644] [2025-02-06 19:01:25,086 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-02-06 19:01:25,086 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:25,086 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:25,090 INFO L229 MonitoredProcess]: Starting monitored process 190 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:25,092 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (190)] Waiting until timeout for monitored process [2025-02-06 19:01:25,224 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 290 statements into 1 equivalence classes. [2025-02-06 19:01:25,273 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 290 of 290 statements. [2025-02-06 19:01:25,273 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:25,273 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:25,279 INFO L256 TraceCheckSpWp]: Trace formula consists of 653 conjuncts, 18 conjuncts are in the unsatisfiable core [2025-02-06 19:01:25,282 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:25,483 INFO L134 CoverageAnalysis]: Checked inductivity of 4978 backedges. 2850 proven. 53 refuted. 0 times theorem prover too weak. 2075 trivial. 0 not checked. [2025-02-06 19:01:25,484 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:26,331 INFO L134 CoverageAnalysis]: Checked inductivity of 4978 backedges. 556 proven. 419 refuted. 0 times theorem prover too weak. 4003 trivial. 0 not checked. [2025-02-06 19:01:26,332 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1001054644] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:26,332 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:26,332 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14, 18] total 32 [2025-02-06 19:01:26,332 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1342134027] [2025-02-06 19:01:26,332 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:26,332 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:01:26,333 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:26,333 INFO L85 PathProgramCache]: Analyzing trace with hash -18365624, now seen corresponding path program 11 times [2025-02-06 19:01:26,333 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:26,333 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [590653441] [2025-02-06 19:01:26,333 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-02-06 19:01:26,333 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:26,337 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 104 statements into 21 equivalence classes. [2025-02-06 19:01:26,341 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 21 check-sat command(s) and asserted 104 of 104 statements. [2025-02-06 19:01:26,342 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 21 check-sat command(s) [2025-02-06 19:01:26,342 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:01:26,342 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1683908837] [2025-02-06 19:01:26,342 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-02-06 19:01:26,342 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:26,342 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:26,350 INFO L229 MonitoredProcess]: Starting monitored process 191 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:26,358 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (191)] Waiting until timeout for monitored process [2025-02-06 19:01:26,485 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 104 statements into 21 equivalence classes. [2025-02-06 19:01:26,514 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 21 check-sat command(s) and asserted 104 of 104 statements. [2025-02-06 19:01:26,514 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 21 check-sat command(s) [2025-02-06 19:01:26,514 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:26,514 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:01:26,523 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-02-06 19:01:26,569 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-02-06 19:01:26,569 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:26,569 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:26,585 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:01:27,082 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:01:27,082 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:01:27,082 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:01:27,082 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:01:27,082 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:01:27,083 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,083 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:01:27,083 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:01:27,083 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration27_Loop [2025-02-06 19:01:27,083 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:01:27,083 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:01:27,083 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,085 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,086 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,087 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,088 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,090 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,091 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,092 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,093 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,095 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,097 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,098 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,139 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:01:27,139 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:01:27,139 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,139 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,157 INFO L229 MonitoredProcess]: Starting monitored process 192 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,159 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (192)] Waiting until timeout for monitored process [2025-02-06 19:01:27,160 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:27,160 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,170 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:27,170 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~k#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_~k#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:27,175 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (192)] Ended with exit code 0 [2025-02-06 19:01:27,175 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,176 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,178 INFO L229 MonitoredProcess]: Starting monitored process 193 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,178 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (193)] Waiting until timeout for monitored process [2025-02-06 19:01:27,179 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:27,179 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,189 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:27,189 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#in~n#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#in~n#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:27,194 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (193)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:27,195 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,195 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,197 INFO L229 MonitoredProcess]: Starting monitored process 194 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,198 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (194)] Waiting until timeout for monitored process [2025-02-06 19:01:27,198 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:27,198 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,209 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:27,209 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=1} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret2#1=1} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:27,214 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (194)] Ended with exit code 0 [2025-02-06 19:01:27,215 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,215 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,217 INFO L229 MonitoredProcess]: Starting monitored process 195 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,218 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (195)] Waiting until timeout for monitored process [2025-02-06 19:01:27,219 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:27,219 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,230 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:27,230 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_~n~0#1=0} Honda state: {ULTIMATE.start_main_~n~0#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:27,236 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (195)] Ended with exit code 0 [2025-02-06 19:01:27,236 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,237 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,239 INFO L229 MonitoredProcess]: Starting monitored process 196 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,240 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (196)] Waiting until timeout for monitored process [2025-02-06 19:01:27,240 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:27,241 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,252 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:27,252 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=5040} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret1#1=5040} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:27,257 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (196)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:27,258 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,258 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,260 INFO L229 MonitoredProcess]: Starting monitored process 197 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,261 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (197)] Waiting until timeout for monitored process [2025-02-06 19:01:27,261 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:27,261 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,272 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:27,272 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~n#1=7} Honda state: {ULTIMATE.start_binomialCoefficient_~n#1=7} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:27,278 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (197)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:27,278 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,278 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,280 INFO L229 MonitoredProcess]: Starting monitored process 198 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,281 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (198)] Waiting until timeout for monitored process [2025-02-06 19:01:27,282 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:27,282 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,292 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:27,292 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Honda state: {ULTIMATE.start_binomialCoefficient_#res#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:27,297 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (198)] Ended with exit code 0 [2025-02-06 19:01:27,297 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,297 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,299 INFO L229 MonitoredProcess]: Starting monitored process 199 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,300 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (199)] Waiting until timeout for monitored process [2025-02-06 19:01:27,301 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:27,301 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,311 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:27,311 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=5040} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=5040} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:27,317 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (199)] Ended with exit code 0 [2025-02-06 19:01:27,317 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,317 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,319 INFO L229 MonitoredProcess]: Starting monitored process 200 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,319 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (200)] Waiting until timeout for monitored process [2025-02-06 19:01:27,320 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:27,320 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,336 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:27,336 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_main_~x~0#1=7} Honda state: {ULTIMATE.start_main_~x~0#1=7} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:27,342 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (200)] Ended with exit code 0 [2025-02-06 19:01:27,343 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,343 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,345 INFO L229 MonitoredProcess]: Starting monitored process 201 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,346 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (201)] Waiting until timeout for monitored process [2025-02-06 19:01:27,346 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:27,346 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,368 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (201)] Ended with exit code 0 [2025-02-06 19:01:27,368 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,368 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,370 INFO L229 MonitoredProcess]: Starting monitored process 202 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,371 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (202)] Waiting until timeout for monitored process [2025-02-06 19:01:27,371 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:01:27,371 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:27,382 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:01:27,390 ERROR L418 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (202)] Exception during sending of exit command (exit): Broken pipe [2025-02-06 19:01:27,390 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (202)] Ended with exit code 0 [2025-02-06 19:01:27,390 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:01:27,391 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:01:27,391 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:01:27,391 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:01:27,391 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:01:27,391 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,391 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:01:27,391 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:01:27,391 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration27_Loop [2025-02-06 19:01:27,391 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:01:27,391 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:01:27,391 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,395 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,396 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,398 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,400 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,401 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,403 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,405 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,407 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,410 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,411 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,412 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:27,453 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:01:27,453 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:01:27,453 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,453 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,455 INFO L229 MonitoredProcess]: Starting monitored process 203 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,456 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (203)] Waiting until timeout for monitored process [2025-02-06 19:01:27,457 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:27,466 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:27,466 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:27,466 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:27,466 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:27,466 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:27,466 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:27,466 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:27,467 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:27,472 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (203)] Ended with exit code 0 [2025-02-06 19:01:27,473 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,473 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,475 INFO L229 MonitoredProcess]: Starting monitored process 204 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,475 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (204)] Waiting until timeout for monitored process [2025-02-06 19:01:27,476 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:27,485 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:27,485 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:27,486 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:27,486 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:27,486 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:27,486 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:27,486 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:27,487 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:27,492 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (204)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:27,492 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,492 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,494 INFO L229 MonitoredProcess]: Starting monitored process 205 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,495 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (205)] Waiting until timeout for monitored process [2025-02-06 19:01:27,495 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:27,504 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:27,505 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:27,505 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:27,505 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:27,505 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:27,505 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:27,505 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:27,506 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:27,511 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (205)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:27,511 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,511 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,514 INFO L229 MonitoredProcess]: Starting monitored process 206 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,514 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (206)] Waiting until timeout for monitored process [2025-02-06 19:01:27,515 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:27,524 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:27,524 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:27,524 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:27,524 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:27,524 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:27,524 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:27,524 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:27,526 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:27,532 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (206)] Ended with exit code 0 [2025-02-06 19:01:27,532 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,532 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,535 INFO L229 MonitoredProcess]: Starting monitored process 207 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,535 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (207)] Waiting until timeout for monitored process [2025-02-06 19:01:27,536 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:27,547 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:27,548 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:27,548 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:27,548 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:27,548 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:27,548 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:27,548 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:27,549 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:27,555 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (207)] Ended with exit code 0 [2025-02-06 19:01:27,555 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,555 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,557 INFO L229 MonitoredProcess]: Starting monitored process 208 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,558 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (208)] Waiting until timeout for monitored process [2025-02-06 19:01:27,559 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:27,571 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:27,571 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:27,571 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:27,571 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:27,571 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:27,571 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:27,571 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:27,573 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:27,580 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (208)] Ended with exit code 0 [2025-02-06 19:01:27,580 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,580 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,583 INFO L229 MonitoredProcess]: Starting monitored process 209 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,585 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (209)] Waiting until timeout for monitored process [2025-02-06 19:01:27,585 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:27,594 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:27,595 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:27,595 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:27,595 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:27,595 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:27,595 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:27,595 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:27,596 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:27,601 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (209)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:27,602 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,602 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,604 INFO L229 MonitoredProcess]: Starting monitored process 210 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,604 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (210)] Waiting until timeout for monitored process [2025-02-06 19:01:27,605 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:27,614 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:27,614 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:27,614 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:27,614 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:27,614 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:27,615 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:27,615 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:27,617 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:27,622 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (210)] Ended with exit code 0 [2025-02-06 19:01:27,623 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,623 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,625 INFO L229 MonitoredProcess]: Starting monitored process 211 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,625 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (211)] Waiting until timeout for monitored process [2025-02-06 19:01:27,627 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:27,637 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:27,637 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:27,637 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:27,637 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:27,637 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:27,638 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:27,638 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:27,640 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:01:27,641 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:01:27,641 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:01:27,641 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:27,642 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:27,644 INFO L229 MonitoredProcess]: Starting monitored process 212 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:27,645 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (212)] Waiting until timeout for monitored process [2025-02-06 19:01:27,645 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:01:27,645 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:01:27,645 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:01:27,645 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 13 Supporting invariants [] [2025-02-06 19:01:27,652 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (211)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:27,653 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:01:27,662 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:27,711 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 290 statements into 1 equivalence classes. [2025-02-06 19:01:27,841 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (212)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:27,866 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 290 of 290 statements. [2025-02-06 19:01:27,866 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:27,866 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:27,875 INFO L256 TraceCheckSpWp]: Trace formula consists of 1941 conjuncts, 94 conjuncts are in the unsatisfiable core [2025-02-06 19:01:27,880 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:29,177 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 104 statements into 1 equivalence classes. [2025-02-06 19:01:29,223 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 104 of 104 statements. [2025-02-06 19:01:29,224 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:29,224 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:29,228 INFO L256 TraceCheckSpWp]: Trace formula consists of 698 conjuncts, 56 conjuncts are in the unsatisfiable core [2025-02-06 19:01:29,230 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:29,505 INFO L134 CoverageAnalysis]: Checked inductivity of 726 backedges. 0 proven. 391 refuted. 0 times theorem prover too weak. 335 trivial. 0 not checked. [2025-02-06 19:01:29,505 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 14 loop predicates [2025-02-06 19:01:29,505 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 2861 states and 5648 transitions. cyclomatic complexity: 2823 Second operand has 17 states, 15 states have (on average 3.066666666666667) internal successors, (46), 15 states have internal predecessors, (46), 6 states have call successors, (12), 2 states have call predecessors, (12), 10 states have return successors, (19), 12 states have call predecessors, (19), 6 states have call successors, (19) [2025-02-06 19:01:29,850 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 2861 states and 5648 transitions. cyclomatic complexity: 2823. Second operand has 17 states, 15 states have (on average 3.066666666666667) internal successors, (46), 15 states have internal predecessors, (46), 6 states have call successors, (12), 2 states have call predecessors, (12), 10 states have return successors, (19), 12 states have call predecessors, (19), 6 states have call successors, (19) Result 5381 states and 9497 transitions. Complement of second has 109 states. [2025-02-06 19:01:29,851 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 23 states 2 stem states 20 non-accepting loop states 1 accepting loop states [2025-02-06 19:01:29,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 15 states have (on average 3.066666666666667) internal successors, (46), 15 states have internal predecessors, (46), 6 states have call successors, (12), 2 states have call predecessors, (12), 10 states have return successors, (19), 12 states have call predecessors, (19), 6 states have call successors, (19) [2025-02-06 19:01:29,851 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 92 transitions. [2025-02-06 19:01:29,851 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 23 states and 92 transitions. Stem has 290 letters. Loop has 104 letters. [2025-02-06 19:01:29,852 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:01:29,852 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 23 states and 92 transitions. Stem has 394 letters. Loop has 104 letters. [2025-02-06 19:01:29,852 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:01:29,852 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 23 states and 92 transitions. Stem has 290 letters. Loop has 208 letters. [2025-02-06 19:01:29,853 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-02-06 19:01:29,853 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 5381 states and 9497 transitions. [2025-02-06 19:01:29,879 INFO L131 ngComponentsAnalysis]: Automaton has 8 accepting balls. 436 [2025-02-06 19:01:29,908 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 5381 states to 3667 states and 6910 transitions. [2025-02-06 19:01:29,908 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 959 [2025-02-06 19:01:29,909 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 964 [2025-02-06 19:01:29,909 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3667 states and 6910 transitions. [2025-02-06 19:01:29,909 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:29,909 INFO L218 hiAutomatonCegarLoop]: Abstraction has 3667 states and 6910 transitions. [2025-02-06 19:01:29,910 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3667 states and 6910 transitions. [2025-02-06 19:01:29,960 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3667 to 3301. [2025-02-06 19:01:29,963 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3301 states, 2034 states have (on average 1.0324483775811208) internal successors, (2100), 2007 states have internal predecessors, (2100), 894 states have call successors, (971), 352 states have call predecessors, (971), 373 states have return successors, (3272), 941 states have call predecessors, (3272), 894 states have call successors, (3272) [2025-02-06 19:01:29,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3301 states to 3301 states and 6343 transitions. [2025-02-06 19:01:29,974 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3301 states and 6343 transitions. [2025-02-06 19:01:29,974 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:29,975 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2025-02-06 19:01:29,975 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=119, Invalid=873, Unknown=0, NotChecked=0, Total=992 [2025-02-06 19:01:29,975 INFO L87 Difference]: Start difference. First operand 3301 states and 6343 transitions. Second operand has 32 states, 29 states have (on average 3.413793103448276) internal successors, (99), 32 states have internal predecessors, (99), 19 states have call successors, (43), 2 states have call predecessors, (43), 11 states have return successors, (48), 20 states have call predecessors, (48), 19 states have call successors, (48) [2025-02-06 19:01:32,104 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:32,104 INFO L93 Difference]: Finished difference Result 6674 states and 15720 transitions. [2025-02-06 19:01:32,104 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 6674 states and 15720 transitions. [2025-02-06 19:01:32,151 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 984 [2025-02-06 19:01:32,253 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 6674 states to 6063 states and 14588 transitions. [2025-02-06 19:01:32,253 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 2830 [2025-02-06 19:01:32,256 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 2868 [2025-02-06 19:01:32,256 INFO L73 IsDeterministic]: Start isDeterministic. Operand 6063 states and 14588 transitions. [2025-02-06 19:01:32,256 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:32,256 INFO L218 hiAutomatonCegarLoop]: Abstraction has 6063 states and 14588 transitions. [2025-02-06 19:01:32,258 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 6063 states and 14588 transitions. [2025-02-06 19:01:32,370 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 6063 to 3686. [2025-02-06 19:01:32,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3686 states, 2237 states have (on average 1.041573535985695) internal successors, (2330), 2212 states have internal predecessors, (2330), 1094 states have call successors, (1161), 344 states have call predecessors, (1161), 355 states have return successors, (4496), 1129 states have call predecessors, (4496), 1094 states have call successors, (4496) [2025-02-06 19:01:32,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3686 states to 3686 states and 7987 transitions. [2025-02-06 19:01:32,386 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3686 states and 7987 transitions. [2025-02-06 19:01:32,386 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 102 states. [2025-02-06 19:01:32,386 INFO L432 stractBuchiCegarLoop]: Abstraction has 3686 states and 7987 transitions. [2025-02-06 19:01:32,386 INFO L338 stractBuchiCegarLoop]: ======== Iteration 28 ============ [2025-02-06 19:01:32,386 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3686 states and 7987 transitions. [2025-02-06 19:01:32,402 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 493 [2025-02-06 19:01:32,402 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:32,402 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:32,404 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [47, 47, 29, 29, 29, 29, 18, 6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:32,404 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [18, 18, 15, 15, 15, 15, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:32,404 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:32,404 INFO L754 eck$LassoCheckResult]: Loop: "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:32,405 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:32,405 INFO L85 PathProgramCache]: Analyzing trace with hash 1000880764, now seen corresponding path program 8 times [2025-02-06 19:01:32,405 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:32,405 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [33748187] [2025-02-06 19:01:32,405 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:01:32,405 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:32,417 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 296 statements into 2 equivalence classes. [2025-02-06 19:01:32,427 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 296 of 296 statements. [2025-02-06 19:01:32,427 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:01:32,427 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:32,721 INFO L134 CoverageAnalysis]: Checked inductivity of 5218 backedges. 904 proven. 38 refuted. 0 times theorem prover too weak. 4276 trivial. 0 not checked. [2025-02-06 19:01:32,721 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:32,722 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [33748187] [2025-02-06 19:01:32,722 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [33748187] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:32,722 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [447276805] [2025-02-06 19:01:32,722 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-02-06 19:01:32,722 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:32,722 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:32,724 INFO L229 MonitoredProcess]: Starting monitored process 213 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:32,725 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (213)] Waiting until timeout for monitored process [2025-02-06 19:01:32,856 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 296 statements into 2 equivalence classes. [2025-02-06 19:01:32,899 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 296 of 296 statements. [2025-02-06 19:01:32,899 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-02-06 19:01:32,899 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:32,901 INFO L256 TraceCheckSpWp]: Trace formula consists of 665 conjuncts, 22 conjuncts are in the unsatisfiable core [2025-02-06 19:01:32,905 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:33,126 INFO L134 CoverageAnalysis]: Checked inductivity of 5218 backedges. 900 proven. 38 refuted. 0 times theorem prover too weak. 4280 trivial. 0 not checked. [2025-02-06 19:01:33,126 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:33,798 INFO L134 CoverageAnalysis]: Checked inductivity of 5218 backedges. 900 proven. 54 refuted. 0 times theorem prover too weak. 4264 trivial. 0 not checked. [2025-02-06 19:01:33,798 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [447276805] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:33,798 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:33,798 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15, 19] total 28 [2025-02-06 19:01:33,798 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [206053550] [2025-02-06 19:01:33,798 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:33,799 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:01:33,799 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:33,799 INFO L85 PathProgramCache]: Analyzing trace with hash -247857618, now seen corresponding path program 12 times [2025-02-06 19:01:33,799 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:33,799 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2056315803] [2025-02-06 19:01:33,799 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-02-06 19:01:33,799 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:33,803 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 110 statements into 22 equivalence classes. [2025-02-06 19:01:33,810 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 22 check-sat command(s) and asserted 110 of 110 statements. [2025-02-06 19:01:33,810 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 22 check-sat command(s) [2025-02-06 19:01:33,810 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:34,131 INFO L134 CoverageAnalysis]: Checked inductivity of 822 backedges. 133 proven. 442 refuted. 0 times theorem prover too weak. 247 trivial. 0 not checked. [2025-02-06 19:01:34,131 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:34,131 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2056315803] [2025-02-06 19:01:34,132 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2056315803] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:34,132 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2109021735] [2025-02-06 19:01:34,132 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-02-06 19:01:34,132 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:34,132 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:34,134 INFO L229 MonitoredProcess]: Starting monitored process 214 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:34,135 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (214)] Waiting until timeout for monitored process [2025-02-06 19:01:34,262 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 110 statements into 22 equivalence classes. [2025-02-06 19:01:34,301 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 22 check-sat command(s) and asserted 110 of 110 statements. [2025-02-06 19:01:34,302 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 22 check-sat command(s) [2025-02-06 19:01:34,302 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:34,303 INFO L256 TraceCheckSpWp]: Trace formula consists of 234 conjuncts, 37 conjuncts are in the unsatisfiable core [2025-02-06 19:01:34,305 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:34,399 INFO L134 CoverageAnalysis]: Checked inductivity of 822 backedges. 127 proven. 434 refuted. 0 times theorem prover too weak. 261 trivial. 0 not checked. [2025-02-06 19:01:34,399 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:37,266 INFO L134 CoverageAnalysis]: Checked inductivity of 822 backedges. 127 proven. 539 refuted. 0 times theorem prover too weak. 156 trivial. 0 not checked. [2025-02-06 19:01:37,266 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2109021735] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:37,266 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:37,267 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 21, 35] total 40 [2025-02-06 19:01:37,267 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2024571495] [2025-02-06 19:01:37,267 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:37,267 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-02-06 19:01:37,267 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-06 19:01:37,267 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2025-02-06 19:01:37,268 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=242, Invalid=1398, Unknown=0, NotChecked=0, Total=1640 [2025-02-06 19:01:37,268 INFO L87 Difference]: Start difference. First operand 3686 states and 7987 transitions. cyclomatic complexity: 4338 Second operand has 41 states, 36 states have (on average 2.2222222222222223) internal successors, (80), 37 states have internal predecessors, (80), 22 states have call successors, (22), 1 states have call predecessors, (22), 17 states have return successors, (35), 19 states have call predecessors, (35), 22 states have call successors, (35) [2025-02-06 19:01:38,893 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-06 19:01:38,893 INFO L93 Difference]: Finished difference Result 4792 states and 11245 transitions. [2025-02-06 19:01:38,893 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 4792 states and 11245 transitions. [2025-02-06 19:01:38,924 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 693 [2025-02-06 19:01:38,964 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 4792 states to 4777 states and 11230 transitions. [2025-02-06 19:01:38,964 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 1675 [2025-02-06 19:01:38,966 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 1675 [2025-02-06 19:01:38,966 INFO L73 IsDeterministic]: Start isDeterministic. Operand 4777 states and 11230 transitions. [2025-02-06 19:01:38,966 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-02-06 19:01:38,966 INFO L218 hiAutomatonCegarLoop]: Abstraction has 4777 states and 11230 transitions. [2025-02-06 19:01:38,968 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4777 states and 11230 transitions. [2025-02-06 19:01:39,065 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4777 to 3804. [2025-02-06 19:01:39,069 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3804 states, 2281 states have (on average 1.0407715914072775) internal successors, (2374), 2254 states have internal predecessors, (2374), 1165 states have call successors, (1232), 364 states have call predecessors, (1232), 358 states have return successors, (5290), 1185 states have call predecessors, (5290), 1165 states have call successors, (5290) [2025-02-06 19:01:39,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3804 states to 3804 states and 8896 transitions. [2025-02-06 19:01:39,084 INFO L240 hiAutomatonCegarLoop]: Abstraction has 3804 states and 8896 transitions. [2025-02-06 19:01:39,087 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 38 states. [2025-02-06 19:01:39,087 INFO L432 stractBuchiCegarLoop]: Abstraction has 3804 states and 8896 transitions. [2025-02-06 19:01:39,087 INFO L338 stractBuchiCegarLoop]: ======== Iteration 29 ============ [2025-02-06 19:01:39,087 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 3804 states and 8896 transitions. [2025-02-06 19:01:39,130 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 518 [2025-02-06 19:01:39,130 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-02-06 19:01:39,130 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-02-06 19:01:39,131 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [47, 47, 29, 29, 29, 29, 18, 6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:39,131 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [19, 19, 16, 16, 16, 16, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-06 19:01:39,132 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~nondet6#1, main_#t~ret7#1, main_#t~ret8#1, main_#t~post9#1, main_~k~0#1, main_#t~post10#1, main_~n~0#1, main_~x~0#1, main_~y~0#1, main_~z~0#1;havoc main_#t~nondet4#1;main_~x~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;" "assume !(main_~x~0#1 < 0);havoc main_#t~nondet5#1;main_~y~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;" "assume !(main_~y~0#1 < 0);havoc main_#t~nondet6#1;main_~z~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1;main_~n~0#1 := 0;" "assume main_~n~0#1 <= main_~x~0#1;main_~k~0#1 := 0;" "assume main_~k~0#1 <= main_~x~0#1;" "assume main_~k~0#1 <= main_~n~0#1;assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~n~0#1, main_~k~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#48#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#46#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#44#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret7#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:39,132 INFO L754 eck$LassoCheckResult]: Loop: "binomialCoefficient_#res#1 := (if binomialCoefficient_#t~ret1#1 < 0 && 0 != binomialCoefficient_#t~ret1#1 % (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) then (if binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1 < 0 then binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1) - 1 else 1 + binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1)) else binomialCoefficient_#t~ret1#1 / (binomialCoefficient_#t~ret2#1 * binomialCoefficient_#t~ret3#1));havoc binomialCoefficient_#t~ret1#1;havoc binomialCoefficient_#t~ret2#1;havoc binomialCoefficient_#t~ret3#1;" "main_#t~ret8#1 := binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;havoc binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1;assume { :end_inline_binomialCoefficient } true;" "main_#t~post9#1 := main_~k~0#1;main_~k~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1;" "assume main_~k~0#1 <= main_~x~0#1;" "assume !(main_~k~0#1 <= main_~n~0#1);assume { :begin_inline_binomialCoefficient } true;binomialCoefficient_#in~n#1, binomialCoefficient_#in~k#1 := main_~k~0#1, main_~n~0#1;havoc binomialCoefficient_#res#1;havoc binomialCoefficient_#t~ret1#1, binomialCoefficient_#t~ret2#1, binomialCoefficient_#t~ret3#1, binomialCoefficient_~n#1, binomialCoefficient_~k#1;binomialCoefficient_~n#1 := binomialCoefficient_#in~n#1;binomialCoefficient_~k#1 := binomialCoefficient_#in~k#1;" "call binomialCoefficient_#t~ret1#1 := fact(binomialCoefficient_~n#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#54#return;" "call binomialCoefficient_#t~ret2#1 := fact(binomialCoefficient_~k#1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#52#return;" "call binomialCoefficient_#t~ret3#1 := fact(binomialCoefficient_~n#1 - binomialCoefficient_~k#1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume !(~n <= 0);" "call #t~ret0 := fact(~n - 1);"< "~n := #in~n;" "assume ~n <= 0;#res := 1;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#42#return;" "#res := ~n * #t~ret0;havoc #t~ret0;" "assume true;" >"#50#return;" [2025-02-06 19:01:39,134 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:39,134 INFO L85 PathProgramCache]: Analyzing trace with hash 1000880764, now seen corresponding path program 9 times [2025-02-06 19:01:39,134 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:39,134 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [629502826] [2025-02-06 19:01:39,134 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:39,134 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:39,142 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 296 statements into 21 equivalence classes. [2025-02-06 19:01:39,153 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) and asserted 157 of 296 statements. [2025-02-06 19:01:39,153 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2025-02-06 19:01:39,153 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:39,379 INFO L134 CoverageAnalysis]: Checked inductivity of 5218 backedges. 1070 proven. 346 refuted. 0 times theorem prover too weak. 3802 trivial. 0 not checked. [2025-02-06 19:01:39,380 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-06 19:01:39,380 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [629502826] [2025-02-06 19:01:39,380 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [629502826] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-06 19:01:39,380 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1722786439] [2025-02-06 19:01:39,380 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-02-06 19:01:39,380 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:39,380 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:39,384 INFO L229 MonitoredProcess]: Starting monitored process 215 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:39,385 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (215)] Waiting until timeout for monitored process [2025-02-06 19:01:39,572 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 296 statements into 21 equivalence classes. [2025-02-06 19:01:39,740 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) and asserted 157 of 296 statements. [2025-02-06 19:01:39,740 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 9 check-sat command(s) [2025-02-06 19:01:39,740 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:39,742 INFO L256 TraceCheckSpWp]: Trace formula consists of 361 conjuncts, 29 conjuncts are in the unsatisfiable core [2025-02-06 19:01:39,745 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:39,817 INFO L134 CoverageAnalysis]: Checked inductivity of 5218 backedges. 1290 proven. 252 refuted. 0 times theorem prover too weak. 3676 trivial. 0 not checked. [2025-02-06 19:01:39,817 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-02-06 19:01:40,721 INFO L134 CoverageAnalysis]: Checked inductivity of 5218 backedges. 1290 proven. 277 refuted. 0 times theorem prover too weak. 3651 trivial. 0 not checked. [2025-02-06 19:01:40,722 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1722786439] provided 0 perfect and 2 imperfect interpolant sequences [2025-02-06 19:01:40,722 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-02-06 19:01:40,722 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 16, 23] total 29 [2025-02-06 19:01:40,722 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1367300748] [2025-02-06 19:01:40,722 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-02-06 19:01:40,722 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-02-06 19:01:40,722 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:40,722 INFO L85 PathProgramCache]: Analyzing trace with hash -2039959532, now seen corresponding path program 13 times [2025-02-06 19:01:40,722 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-06 19:01:40,722 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1247764926] [2025-02-06 19:01:40,722 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-02-06 19:01:40,722 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-06 19:01:40,728 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 116 statements into 1 equivalence classes. [2025-02-06 19:01:40,731 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 116 of 116 statements. [2025-02-06 19:01:40,731 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:40,732 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-02-06 19:01:40,732 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [799995635] [2025-02-06 19:01:40,732 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-02-06 19:01:40,732 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-06 19:01:40,732 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:40,734 INFO L229 MonitoredProcess]: Starting monitored process 216 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-06 19:01:40,736 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (216)] Waiting until timeout for monitored process [2025-02-06 19:01:40,912 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 116 statements into 1 equivalence classes. [2025-02-06 19:01:40,974 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 116 of 116 statements. [2025-02-06 19:01:40,974 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:40,974 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:40,974 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-06 19:01:40,983 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 116 statements into 1 equivalence classes. [2025-02-06 19:01:41,013 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 116 of 116 statements. [2025-02-06 19:01:41,013 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:41,013 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-06 19:01:41,023 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-06 19:01:41,494 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:01:41,494 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:01:41,494 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:01:41,494 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:01:41,494 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2025-02-06 19:01:41,494 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:41,494 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:01:41,494 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:01:41,494 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration29_Loop [2025-02-06 19:01:41,494 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:01:41,494 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:01:41,494 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,496 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,498 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,500 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,501 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,503 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,504 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,505 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,506 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,507 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,509 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,510 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,554 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:01:41,554 INFO L365 LassoAnalysis]: Checking for nontermination... [2025-02-06 19:01:41,554 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:41,554 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:41,557 INFO L229 MonitoredProcess]: Starting monitored process 217 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:41,558 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (217)] Waiting until timeout for monitored process [2025-02-06 19:01:41,559 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:41,559 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:41,569 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:41,569 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_~n#1=8} Honda state: {ULTIMATE.start_binomialCoefficient_~n#1=8} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:41,575 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (217)] Ended with exit code 0 [2025-02-06 19:01:41,575 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:41,575 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:41,577 INFO L229 MonitoredProcess]: Starting monitored process 218 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:41,577 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (218)] Waiting until timeout for monitored process [2025-02-06 19:01:41,578 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:41,578 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:41,588 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2025-02-06 19:01:41,588 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=40320} Honda state: {ULTIMATE.start_binomialCoefficient_#t~ret3#1=40320} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2025-02-06 19:01:41,593 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (218)] Ended with exit code 0 [2025-02-06 19:01:41,594 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:41,594 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:41,596 INFO L229 MonitoredProcess]: Starting monitored process 219 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:41,596 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (219)] Waiting until timeout for monitored process [2025-02-06 19:01:41,597 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2025-02-06 19:01:41,597 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:41,613 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (219)] Ended with exit code 0 [2025-02-06 19:01:41,613 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:41,613 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:41,615 INFO L229 MonitoredProcess]: Starting monitored process 220 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:41,616 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (220)] Waiting until timeout for monitored process [2025-02-06 19:01:41,617 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2025-02-06 19:01:41,617 INFO L160 nArgumentSynthesizer]: Using integer mode. [2025-02-06 19:01:41,628 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2025-02-06 19:01:41,633 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (220)] Ended with exit code 0 [2025-02-06 19:01:41,634 INFO L204 LassoAnalysis]: Preferences: [2025-02-06 19:01:41,634 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-02-06 19:01:41,634 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-02-06 19:01:41,634 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-02-06 19:01:41,634 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-02-06 19:01:41,634 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:41,634 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-02-06 19:01:41,634 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-02-06 19:01:41,634 INFO L132 ssoRankerPreferences]: Filename of dumped script: Binomial.c_Iteration29_Loop [2025-02-06 19:01:41,634 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-02-06 19:01:41,634 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-02-06 19:01:41,634 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,636 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,637 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,640 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,642 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,643 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,644 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,645 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,651 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,652 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,654 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,655 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-02-06 19:01:41,697 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-02-06 19:01:41,697 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-02-06 19:01:41,697 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:41,697 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:41,700 INFO L229 MonitoredProcess]: Starting monitored process 221 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:41,700 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (221)] Waiting until timeout for monitored process [2025-02-06 19:01:41,701 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:41,710 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:41,710 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:41,710 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:41,710 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:41,710 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:41,711 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:41,711 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:41,712 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:41,717 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (221)] Ended with exit code 0 [2025-02-06 19:01:41,718 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:41,718 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:41,719 INFO L229 MonitoredProcess]: Starting monitored process 222 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:41,720 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (222)] Waiting until timeout for monitored process [2025-02-06 19:01:41,721 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:41,730 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:41,730 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:41,730 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:41,730 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:41,730 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:41,731 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:41,731 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:41,732 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-02-06 19:01:41,737 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (222)] Forceful destruction successful, exit code 0 [2025-02-06 19:01:41,738 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:41,738 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:41,740 INFO L229 MonitoredProcess]: Starting monitored process 223 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:41,740 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (223)] Waiting until timeout for monitored process [2025-02-06 19:01:41,741 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-02-06 19:01:41,750 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-02-06 19:01:41,751 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-02-06 19:01:41,751 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-02-06 19:01:41,751 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-02-06 19:01:41,751 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-02-06 19:01:41,751 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-02-06 19:01:41,751 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-02-06 19:01:41,753 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-02-06 19:01:41,754 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2025-02-06 19:01:41,754 INFO L444 ModelExtractionUtils]: 0 out of 3 variables were initially zero. Simplification set additionally 0 variables to zero. [2025-02-06 19:01:41,754 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-02-06 19:01:41,754 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-06 19:01:41,757 INFO L229 MonitoredProcess]: Starting monitored process 224 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-02-06 19:01:41,757 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (224)] Waiting until timeout for monitored process [2025-02-06 19:01:41,758 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-02-06 19:01:41,758 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2025-02-06 19:01:41,758 INFO L474 LassoAnalysis]: Proved termination. [2025-02-06 19:01:41,758 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~k~0#1) = -2*ULTIMATE.start_main_~k~0#1 + 15 Supporting invariants [] [2025-02-06 19:01:41,763 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (223)] Ended with exit code 0 [2025-02-06 19:01:41,763 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-02-06 19:01:41,771 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-06 19:01:41,816 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 296 statements into 1 equivalence classes. [2025-02-06 19:01:41,955 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 296 of 296 statements. [2025-02-06 19:01:41,955 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:41,955 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:41,964 INFO L256 TraceCheckSpWp]: Trace formula consists of 1981 conjuncts, 96 conjuncts are in the unsatisfiable core [2025-02-06 19:01:41,968 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:42,324 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (224)] Ended with exit code 0 [2025-02-06 19:01:43,133 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 116 statements into 1 equivalence classes. [2025-02-06 19:01:43,195 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 116 of 116 statements. [2025-02-06 19:01:43,195 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-06 19:01:43,195 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-06 19:01:43,201 INFO L256 TraceCheckSpWp]: Trace formula consists of 778 conjuncts, 62 conjuncts are in the unsatisfiable core [2025-02-06 19:01:43,203 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-06 19:01:43,508 INFO L134 CoverageAnalysis]: Checked inductivity of 924 backedges. 0 proven. 498 refuted. 0 times theorem prover too weak. 426 trivial. 0 not checked. [2025-02-06 19:01:43,509 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 15 loop predicates [2025-02-06 19:01:43,509 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 3804 states and 8896 transitions. cyclomatic complexity: 5129 Second operand has 18 states, 16 states have (on average 3.0) internal successors, (48), 16 states have internal predecessors, (48), 6 states have call successors, (12), 2 states have call predecessors, (12), 11 states have return successors, (20), 13 states have call predecessors, (20), 6 states have call successors, (20)