./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/termination-recursive-malloc/mergeSort.i --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 551b0097 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-recursive-malloc/mergeSort.i -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 e6d71d49c6e185294c0f1f4729e12b8d7df6d1365b5d24a48890a0be5b6780c4 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-10 07:10:01,588 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-10 07:10:01,644 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-Automizer_Default.epf [2025-01-10 07:10:01,650 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-10 07:10:01,650 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-10 07:10:01,666 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-10 07:10:01,667 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-10 07:10:01,667 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-10 07:10:01,667 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-10 07:10:01,667 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-10 07:10:01,668 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-10 07:10:01,668 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-10 07:10:01,668 INFO L153 SettingsManager]: * Use SBE=true [2025-01-10 07:10:01,668 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2025-01-10 07:10:01,668 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2025-01-10 07:10:01,668 INFO L153 SettingsManager]: * Use old map elimination=false [2025-01-10 07:10:01,668 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2025-01-10 07:10:01,668 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2025-01-10 07:10:01,668 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2025-01-10 07:10:01,668 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-10 07:10:01,669 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-10 07:10:01,669 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-10 07:10:01,670 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-10 07:10:01,670 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-10 07:10:01,670 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2025-01-10 07:10:01,670 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 -> e6d71d49c6e185294c0f1f4729e12b8d7df6d1365b5d24a48890a0be5b6780c4 [2025-01-10 07:10:01,856 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-10 07:10:01,861 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-10 07:10:01,868 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-10 07:10:01,869 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-10 07:10:01,869 INFO L274 PluginConnector]: CDTParser initialized [2025-01-10 07:10:01,870 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/termination-recursive-malloc/mergeSort.i [2025-01-10 07:10:03,032 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/699b9273a/f27df675f7174d3e984a31e1fe24e0ab/FLAG908bd34a8 [2025-01-10 07:10:03,368 INFO L384 CDTParser]: Found 1 translation units. [2025-01-10 07:10:03,369 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/termination-recursive-malloc/mergeSort.i [2025-01-10 07:10:03,385 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/699b9273a/f27df675f7174d3e984a31e1fe24e0ab/FLAG908bd34a8 [2025-01-10 07:10:03,635 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/699b9273a/f27df675f7174d3e984a31e1fe24e0ab [2025-01-10 07:10:03,640 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-10 07:10:03,641 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-10 07:10:03,642 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-10 07:10:03,643 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-10 07:10:03,647 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-10 07:10:03,652 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,653 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@47254d7f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03, skipping insertion in model container [2025-01-10 07:10:03,653 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,670 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-10 07:10:03,869 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-10 07:10:03,886 INFO L200 MainTranslator]: Completed pre-run [2025-01-10 07:10:03,897 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-10 07:10:03,905 INFO L204 MainTranslator]: Completed translation [2025-01-10 07:10:03,906 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03 WrapperNode [2025-01-10 07:10:03,906 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-10 07:10:03,907 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-10 07:10:03,907 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-10 07:10:03,907 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-10 07:10:03,911 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,915 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,926 INFO L138 Inliner]: procedures = 12, calls = 20, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 94 [2025-01-10 07:10:03,927 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-10 07:10:03,927 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-10 07:10:03,927 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-10 07:10:03,927 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-10 07:10:03,933 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,933 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,934 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,942 INFO L175 MemorySlicer]: Split 10 memory accesses to 2 slices as follows [2, 8]. 80 percent of accesses are in the largest equivalence class. The 0 initializations are split as follows [0, 0]. The 3 writes are split as follows [1, 2]. [2025-01-10 07:10:03,942 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,942 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,945 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,946 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,948 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,948 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,949 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,950 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-10 07:10:03,950 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-10 07:10:03,950 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-10 07:10:03,951 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-10 07:10:03,951 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (1/1) ... [2025-01-10 07:10:03,955 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:03,963 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:03,973 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-01-10 07:10:03,986 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-01-10 07:10:04,001 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-01-10 07:10:04,001 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-01-10 07:10:04,001 INFO L130 BoogieDeclarations]: Found specification of procedure merge_sort [2025-01-10 07:10:04,001 INFO L138 BoogieDeclarations]: Found implementation of procedure merge_sort [2025-01-10 07:10:04,001 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2025-01-10 07:10:04,001 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-10 07:10:04,002 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-10 07:10:04,002 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-01-10 07:10:04,002 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-01-10 07:10:04,002 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2025-01-10 07:10:04,047 INFO L234 CfgBuilder]: Building ICFG [2025-01-10 07:10:04,049 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-10 07:10:04,215 INFO L? ?]: Removed 31 outVars from TransFormulas that were not future-live. [2025-01-10 07:10:04,215 INFO L283 CfgBuilder]: Performing block encoding [2025-01-10 07:10:04,225 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-10 07:10:04,226 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-10 07:10:04,226 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.01 07:10:04 BoogieIcfgContainer [2025-01-10 07:10:04,226 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-10 07:10:04,227 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2025-01-10 07:10:04,228 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2025-01-10 07:10:04,233 INFO L274 PluginConnector]: BuchiAutomizer initialized [2025-01-10 07:10:04,233 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-01-10 07:10:04,233 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 10.01 07:10:03" (1/3) ... [2025-01-10 07:10:04,234 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@3a460ec2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.01 07:10:04, skipping insertion in model container [2025-01-10 07:10:04,234 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-01-10 07:10:04,235 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.01 07:10:03" (2/3) ... [2025-01-10 07:10:04,235 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@3a460ec2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 10.01 07:10:04, skipping insertion in model container [2025-01-10 07:10:04,235 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-01-10 07:10:04,235 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.01 07:10:04" (3/3) ... [2025-01-10 07:10:04,236 INFO L363 chiAutomizerObserver]: Analyzing ICFG mergeSort.i [2025-01-10 07:10:04,276 INFO L306 stractBuchiCegarLoop]: Interprodecural is true [2025-01-10 07:10:04,277 INFO L307 stractBuchiCegarLoop]: Hoare is None [2025-01-10 07:10:04,277 INFO L308 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2025-01-10 07:10:04,277 INFO L309 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2025-01-10 07:10:04,277 INFO L310 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2025-01-10 07:10:04,277 INFO L311 stractBuchiCegarLoop]: Difference is false [2025-01-10 07:10:04,278 INFO L312 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2025-01-10 07:10:04,278 INFO L316 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2025-01-10 07:10:04,282 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 25 states, 20 states have (on average 1.4) internal successors, (28), 20 states have internal predecessors, (28), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-01-10 07:10:04,306 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 13 [2025-01-10 07:10:04,306 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:04,306 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:04,309 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:10:04,309 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2025-01-10 07:10:04,309 INFO L338 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2025-01-10 07:10:04,310 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 25 states, 20 states have (on average 1.4) internal successors, (28), 20 states have internal predecessors, (28), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-01-10 07:10:04,312 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 13 [2025-01-10 07:10:04,312 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:04,312 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:04,312 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2025-01-10 07:10:04,312 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2025-01-10 07:10:04,317 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" [2025-01-10 07:10:04,317 INFO L754 eck$LassoCheckResult]: Loop: "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" [2025-01-10 07:10:04,321 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:04,322 INFO L85 PathProgramCache]: Analyzing trace with hash 73552, now seen corresponding path program 1 times [2025-01-10 07:10:04,334 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:04,338 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1567413945] [2025-01-10 07:10:04,338 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:04,339 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:04,415 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:04,438 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:04,438 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:04,438 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:04,438 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:04,441 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:04,447 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:04,447 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:04,447 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:04,464 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:04,470 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:04,474 INFO L85 PathProgramCache]: Analyzing trace with hash 86, now seen corresponding path program 1 times [2025-01-10 07:10:04,475 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:04,475 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [235664079] [2025-01-10 07:10:04,475 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:04,475 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:04,479 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:04,486 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:04,487 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:04,487 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:04,488 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:04,491 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:04,497 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:04,497 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:04,497 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:04,499 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:04,500 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:04,501 INFO L85 PathProgramCache]: Analyzing trace with hash 2280167, now seen corresponding path program 1 times [2025-01-10 07:10:04,501 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:04,501 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [436744225] [2025-01-10 07:10:04,501 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:04,501 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:04,512 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-01-10 07:10:04,529 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-01-10 07:10:04,532 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:04,532 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:04,533 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:04,535 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-01-10 07:10:04,543 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-01-10 07:10:04,546 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:04,547 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:04,549 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:04,814 INFO L204 LassoAnalysis]: Preferences: [2025-01-10 07:10:04,814 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-01-10 07:10:04,814 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-01-10 07:10:04,814 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-01-10 07:10:04,815 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-01-10 07:10:04,815 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:04,815 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-01-10 07:10:04,815 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-01-10 07:10:04,815 INFO L132 ssoRankerPreferences]: Filename of dumped script: mergeSort.i_Iteration1_Lasso [2025-01-10 07:10:04,815 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-01-10 07:10:04,815 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-01-10 07:10:04,824 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:04,828 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:04,831 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:04,833 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:04,901 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:04,904 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:04,906 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:05,084 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-01-10 07:10:05,086 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-01-10 07:10:05,087 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:05,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:05,089 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-01-10 07:10:05,091 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-01-10 07:10:05,092 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-01-10 07:10:05,103 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:05,103 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:05,104 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:05,104 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:05,104 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:05,107 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:05,107 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:05,109 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:05,115 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:05,115 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:05,115 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:05,120 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-01-10 07:10:05,121 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-01-10 07:10:05,125 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-01-10 07:10:05,135 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:05,136 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:05,136 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:05,136 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:05,136 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:05,138 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:05,138 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:05,139 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:05,145 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2025-01-10 07:10:05,145 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:05,145 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:05,147 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-01-10 07:10:05,148 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-01-10 07:10:05,150 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-01-10 07:10:05,159 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:05,160 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:05,160 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:05,160 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:05,160 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:05,161 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:05,161 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:05,162 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:05,167 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-01-10 07:10:05,168 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:05,168 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:05,170 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-01-10 07:10:05,171 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-01-10 07:10:05,172 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-01-10 07:10:05,183 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:05,183 INFO L203 nArgumentSynthesizer]: 2 stem disjuncts [2025-01-10 07:10:05,183 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:05,183 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:05,186 INFO L401 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2025-01-10 07:10:05,186 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:05,190 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:05,196 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-01-10 07:10:05,197 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:05,197 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:05,198 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-01-10 07:10:05,204 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-01-10 07:10:05,204 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-01-10 07:10:05,214 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:05,214 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:05,214 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:05,214 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:05,214 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:05,215 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:05,215 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:05,216 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:05,222 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-01-10 07:10:05,223 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:05,223 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:05,225 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-01-10 07:10:05,226 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-01-10 07:10:05,227 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-01-10 07:10:05,238 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:05,238 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:05,238 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:05,238 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:05,241 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:05,241 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:05,245 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:05,251 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-01-10 07:10:05,252 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:05,252 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:05,254 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-01-10 07:10:05,255 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-01-10 07:10:05,256 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-01-10 07:10:05,266 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:05,267 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:05,267 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:05,267 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:05,269 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:05,269 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:05,273 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:05,278 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:05,278 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:05,278 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:05,280 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-01-10 07:10:05,304 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-01-10 07:10:05,304 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-01-10 07:10:05,315 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:05,315 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:05,315 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:05,315 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:05,320 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:05,320 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:05,327 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-01-10 07:10:05,343 INFO L443 ModelExtractionUtils]: Simplification made 9 calls to the SMT solver. [2025-01-10 07:10:05,345 INFO L444 ModelExtractionUtils]: 2 out of 16 variables were initially zero. Simplification set additionally 10 variables to zero. [2025-01-10 07:10:05,346 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:05,346 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:05,353 INFO L229 MonitoredProcess]: Starting monitored process 10 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-01-10 07:10:05,354 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Waiting until timeout for monitored process [2025-01-10 07:10:05,355 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-01-10 07:10:05,367 INFO L438 nArgumentSynthesizer]: Removed 1 redundant supporting invariants from a total of 2. [2025-01-10 07:10:05,367 INFO L474 LassoAnalysis]: Proved termination. [2025-01-10 07:10:05,368 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~i~1#1, v_rep(select #length ULTIMATE.start_main_~a~0#1.base)_1) = -4*ULTIMATE.start_main_~i~1#1 + 1*v_rep(select #length ULTIMATE.start_main_~a~0#1.base)_1 Supporting invariants [1*ULTIMATE.start_main_~a~0#1.offset >= 0] [2025-01-10 07:10:05,374 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:05,380 INFO L156 tatePredicateManager]: 1 out of 2 supporting invariants were superfluous and have been removed [2025-01-10 07:10:05,385 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2025-01-10 07:10:05,386 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2025-01-10 07:10:05,407 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:05,413 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:05,416 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:05,417 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:05,417 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:05,418 INFO L256 TraceCheckSpWp]: Trace formula consists of 21 conjuncts, 3 conjuncts are in the unsatisfiable core [2025-01-10 07:10:05,419 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:05,430 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:05,432 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:05,433 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:05,433 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:05,433 INFO L256 TraceCheckSpWp]: Trace formula consists of 14 conjuncts, 5 conjuncts are in the unsatisfiable core [2025-01-10 07:10:05,434 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:05,437 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:05,455 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 1 loop predicates [2025-01-10 07:10:05,457 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 25 states, 20 states have (on average 1.4) internal successors, (28), 20 states have internal predecessors, (28), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand has 2 states, 2 states have (on average 2.0) internal successors, (4), 2 states have internal predecessors, (4), 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-01-10 07:10:05,492 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 25 states, 20 states have (on average 1.4) internal successors, (28), 20 states have internal predecessors, (28), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3). Second operand has 2 states, 2 states have (on average 2.0) internal successors, (4), 2 states have internal predecessors, (4), 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 29 states and 38 transitions. Complement of second has 3 states. [2025-01-10 07:10:05,494 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 2 states 1 stem states 0 non-accepting loop states 1 accepting loop states [2025-01-10 07:10:05,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 2.0) internal successors, (4), 2 states have internal predecessors, (4), 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-01-10 07:10:05,500 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 7 transitions. [2025-01-10 07:10:05,503 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 2 states and 7 transitions. Stem has 3 letters. Loop has 1 letters. [2025-01-10 07:10:05,505 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:05,505 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 2 states and 7 transitions. Stem has 4 letters. Loop has 1 letters. [2025-01-10 07:10:05,505 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:05,505 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 2 states and 7 transitions. Stem has 3 letters. Loop has 2 letters. [2025-01-10 07:10:05,505 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:05,506 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 29 states and 38 transitions. [2025-01-10 07:10:05,507 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2025-01-10 07:10:05,510 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 29 states to 22 states and 31 transitions. [2025-01-10 07:10:05,512 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 20 [2025-01-10 07:10:05,512 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 21 [2025-01-10 07:10:05,512 INFO L73 IsDeterministic]: Start isDeterministic. Operand 22 states and 31 transitions. [2025-01-10 07:10:05,513 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:10:05,514 INFO L218 hiAutomatonCegarLoop]: Abstraction has 22 states and 31 transitions. [2025-01-10 07:10:05,522 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states and 31 transitions. [2025-01-10 07:10:05,530 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 22. [2025-01-10 07:10:05,531 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.4444444444444444) internal successors, (26), 18 states have internal predecessors, (26), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2025-01-10 07:10:05,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 31 transitions. [2025-01-10 07:10:05,534 INFO L240 hiAutomatonCegarLoop]: Abstraction has 22 states and 31 transitions. [2025-01-10 07:10:05,534 INFO L432 stractBuchiCegarLoop]: Abstraction has 22 states and 31 transitions. [2025-01-10 07:10:05,534 INFO L338 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2025-01-10 07:10:05,534 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 22 states and 31 transitions. [2025-01-10 07:10:05,536 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2025-01-10 07:10:05,536 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:05,536 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:05,537 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2025-01-10 07:10:05,537 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2025-01-10 07:10:05,537 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< [2025-01-10 07:10:05,537 INFO L754 eck$LassoCheckResult]: Loop: "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< [2025-01-10 07:10:05,537 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:05,537 INFO L85 PathProgramCache]: Analyzing trace with hash 70685306, now seen corresponding path program 1 times [2025-01-10 07:10:05,537 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:05,537 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [495703902] [2025-01-10 07:10:05,537 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:05,537 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:05,543 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 5 statements into 1 equivalence classes. [2025-01-10 07:10:05,548 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 5 of 5 statements. [2025-01-10 07:10:05,549 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:05,549 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:05,587 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:05,587 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:05,587 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [495703902] [2025-01-10 07:10:05,588 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [495703902] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-10 07:10:05,588 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-10 07:10:05,588 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-01-10 07:10:05,588 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1169422939] [2025-01-10 07:10:05,589 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-10 07:10:05,590 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:05,590 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:05,590 INFO L85 PathProgramCache]: Analyzing trace with hash 29978, now seen corresponding path program 1 times [2025-01-10 07:10:05,590 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:05,590 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1858843136] [2025-01-10 07:10:05,590 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:05,590 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:05,593 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:05,598 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:05,598 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:05,598 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:05,598 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:05,599 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:05,602 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:05,602 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:05,602 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:05,603 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:05,774 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:05,775 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-01-10 07:10:05,776 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-01-10 07:10:05,777 INFO L87 Difference]: Start difference. First operand 22 states and 31 transitions. cyclomatic complexity: 13 Second operand has 3 states, 2 states have (on average 2.0) internal successors, (4), 3 states have internal predecessors, (4), 1 states have call successors, (1), 1 states have call predecessors, (1), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-10 07:10:05,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:05,784 INFO L93 Difference]: Finished difference Result 22 states and 30 transitions. [2025-01-10 07:10:05,784 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 22 states and 30 transitions. [2025-01-10 07:10:05,785 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2025-01-10 07:10:05,785 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 22 states to 22 states and 30 transitions. [2025-01-10 07:10:05,786 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 21 [2025-01-10 07:10:05,786 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 21 [2025-01-10 07:10:05,786 INFO L73 IsDeterministic]: Start isDeterministic. Operand 22 states and 30 transitions. [2025-01-10 07:10:05,786 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:10:05,786 INFO L218 hiAutomatonCegarLoop]: Abstraction has 22 states and 30 transitions. [2025-01-10 07:10:05,786 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states and 30 transitions. [2025-01-10 07:10:05,787 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 22. [2025-01-10 07:10:05,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 18 states have internal predecessors, (25), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2025-01-10 07:10:05,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 30 transitions. [2025-01-10 07:10:05,787 INFO L240 hiAutomatonCegarLoop]: Abstraction has 22 states and 30 transitions. [2025-01-10 07:10:05,788 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-01-10 07:10:05,788 INFO L432 stractBuchiCegarLoop]: Abstraction has 22 states and 30 transitions. [2025-01-10 07:10:05,788 INFO L338 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2025-01-10 07:10:05,788 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 22 states and 30 transitions. [2025-01-10 07:10:05,789 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2025-01-10 07:10:05,789 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:05,789 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:05,789 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2025-01-10 07:10:05,789 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2025-01-10 07:10:05,789 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< [2025-01-10 07:10:05,789 INFO L754 eck$LassoCheckResult]: Loop: "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< [2025-01-10 07:10:05,789 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:05,789 INFO L85 PathProgramCache]: Analyzing trace with hash -2103724975, now seen corresponding path program 1 times [2025-01-10 07:10:05,789 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:05,789 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1662409117] [2025-01-10 07:10:05,789 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:05,790 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:05,793 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-01-10 07:10:05,799 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-01-10 07:10:05,799 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:05,799 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:05,799 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:05,801 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-01-10 07:10:05,805 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-01-10 07:10:05,805 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:05,805 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:05,809 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:05,810 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:05,810 INFO L85 PathProgramCache]: Analyzing trace with hash 29978, now seen corresponding path program 2 times [2025-01-10 07:10:05,810 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:05,810 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1168748183] [2025-01-10 07:10:05,810 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:05,810 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:05,813 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:05,816 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:05,816 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-10 07:10:05,816 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:05,817 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:05,818 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:05,821 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:05,821 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:05,821 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:05,822 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:05,822 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:05,822 INFO L85 PathProgramCache]: Analyzing trace with hash 92053194, now seen corresponding path program 1 times [2025-01-10 07:10:05,822 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:05,823 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1010689822] [2025-01-10 07:10:05,823 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:05,823 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:05,826 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 9 statements into 1 equivalence classes. [2025-01-10 07:10:05,832 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 9 of 9 statements. [2025-01-10 07:10:05,833 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:05,833 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:05,908 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:05,908 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:05,908 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1010689822] [2025-01-10 07:10:05,908 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1010689822] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:05,908 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [861498018] [2025-01-10 07:10:05,908 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:05,908 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:05,909 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:05,910 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-01-10 07:10:05,912 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-01-10 07:10:05,939 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 9 statements into 1 equivalence classes. [2025-01-10 07:10:05,947 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 9 of 9 statements. [2025-01-10 07:10:05,947 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:05,947 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:05,948 INFO L256 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 6 conjuncts are in the unsatisfiable core [2025-01-10 07:10:05,948 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:05,966 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:05,966 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:05,993 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:05,993 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [861498018] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:05,993 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:05,993 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 8 [2025-01-10 07:10:05,994 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [814303228] [2025-01-10 07:10:05,994 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:06,131 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:06,131 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2025-01-10 07:10:06,132 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2025-01-10 07:10:06,132 INFO L87 Difference]: Start difference. First operand 22 states and 30 transitions. cyclomatic complexity: 12 Second operand has 8 states, 6 states have (on average 1.5) internal successors, (9), 7 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-01-10 07:10:06,186 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:06,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:06,188 INFO L93 Difference]: Finished difference Result 28 states and 36 transitions. [2025-01-10 07:10:06,188 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 28 states and 36 transitions. [2025-01-10 07:10:06,189 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2025-01-10 07:10:06,190 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 28 states to 23 states and 31 transitions. [2025-01-10 07:10:06,190 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 21 [2025-01-10 07:10:06,190 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 21 [2025-01-10 07:10:06,190 INFO L73 IsDeterministic]: Start isDeterministic. Operand 23 states and 31 transitions. [2025-01-10 07:10:06,190 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-01-10 07:10:06,190 INFO L218 hiAutomatonCegarLoop]: Abstraction has 23 states and 31 transitions. [2025-01-10 07:10:06,190 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states and 31 transitions. [2025-01-10 07:10:06,191 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2025-01-10 07:10:06,191 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 19 states have (on average 1.368421052631579) internal successors, (26), 19 states have internal predecessors, (26), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2025-01-10 07:10:06,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 31 transitions. [2025-01-10 07:10:06,192 INFO L240 hiAutomatonCegarLoop]: Abstraction has 23 states and 31 transitions. [2025-01-10 07:10:06,192 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-01-10 07:10:06,192 INFO L432 stractBuchiCegarLoop]: Abstraction has 23 states and 31 transitions. [2025-01-10 07:10:06,192 INFO L338 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2025-01-10 07:10:06,193 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 23 states and 31 transitions. [2025-01-10 07:10:06,193 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2025-01-10 07:10:06,193 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:06,193 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:06,193 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1, 1] [2025-01-10 07:10:06,193 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2025-01-10 07:10:06,194 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< [2025-01-10 07:10:06,194 INFO L754 eck$LassoCheckResult]: Loop: "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< [2025-01-10 07:10:06,194 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:06,194 INFO L85 PathProgramCache]: Analyzing trace with hash -790966950, now seen corresponding path program 2 times [2025-01-10 07:10:06,194 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:06,194 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [114920474] [2025-01-10 07:10:06,194 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:06,194 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:06,199 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 7 statements into 2 equivalence classes. [2025-01-10 07:10:06,207 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:06,207 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:10:06,207 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:06,207 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:06,208 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:06,213 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:06,213 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:06,213 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:06,215 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:06,215 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:06,215 INFO L85 PathProgramCache]: Analyzing trace with hash 29978, now seen corresponding path program 3 times [2025-01-10 07:10:06,215 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:06,215 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1499014043] [2025-01-10 07:10:06,215 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:10:06,215 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:06,218 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:06,220 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:06,220 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-01-10 07:10:06,220 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:06,220 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:06,221 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:06,222 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:06,223 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:06,223 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:06,224 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:06,224 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:06,224 INFO L85 PathProgramCache]: Analyzing trace with hash -1505821407, now seen corresponding path program 2 times [2025-01-10 07:10:06,224 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:06,224 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1843967897] [2025-01-10 07:10:06,224 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:06,224 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:06,228 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 10 statements into 2 equivalence classes. [2025-01-10 07:10:06,236 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 10 of 10 statements. [2025-01-10 07:10:06,236 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:10:06,236 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:06,236 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:06,238 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 10 statements into 1 equivalence classes. [2025-01-10 07:10:06,245 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 10 of 10 statements. [2025-01-10 07:10:06,245 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:06,245 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:06,248 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:06,633 INFO L204 LassoAnalysis]: Preferences: [2025-01-10 07:10:06,633 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-01-10 07:10:06,633 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-01-10 07:10:06,633 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-01-10 07:10:06,633 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-01-10 07:10:06,633 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:06,633 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-01-10 07:10:06,633 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-01-10 07:10:06,633 INFO L132 ssoRankerPreferences]: Filename of dumped script: mergeSort.i_Iteration4_Lasso [2025-01-10 07:10:06,633 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-01-10 07:10:06,633 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-01-10 07:10:06,635 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,637 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,639 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,640 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,642 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,643 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,644 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,646 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,647 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,649 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,650 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,652 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,655 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,656 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,657 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,659 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,660 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,662 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,664 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,665 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,666 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,668 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,669 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,671 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,672 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,674 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,676 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,677 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,682 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,684 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,685 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,687 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,688 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,689 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,691 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,692 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,694 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,695 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,788 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,790 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,792 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,793 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,795 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,796 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,798 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,800 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:06,801 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:07,043 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-01-10 07:10:07,044 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-01-10 07:10:07,044 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,044 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,045 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-01-10 07:10:07,047 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-01-10 07:10:07,048 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-01-10 07:10:07,059 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,060 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,060 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,060 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,060 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,061 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,061 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,062 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,068 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-01-10 07:10:07,068 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,068 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,070 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-01-10 07:10:07,071 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-01-10 07:10:07,073 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-01-10 07:10:07,082 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,083 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,083 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,083 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,083 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,083 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,083 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,085 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,090 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-01-10 07:10:07,090 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,090 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,092 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-01-10 07:10:07,093 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-01-10 07:10:07,095 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-01-10 07:10:07,105 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,105 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,105 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,105 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,105 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,106 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,106 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,107 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,112 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-01-10 07:10:07,113 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,113 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,115 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-01-10 07:10:07,116 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-01-10 07:10:07,117 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-01-10 07:10:07,126 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,127 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,127 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,127 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,127 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,127 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,127 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,128 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,134 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,134 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,134 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,136 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-01-10 07:10:07,137 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-01-10 07:10:07,138 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-01-10 07:10:07,148 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,148 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,148 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,148 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,148 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,149 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,149 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,152 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,157 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,158 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,160 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-01-10 07:10:07,161 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-01-10 07:10:07,161 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-01-10 07:10:07,171 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,171 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,172 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,172 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,172 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,172 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,172 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,173 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,180 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Ended with exit code 0 [2025-01-10 07:10:07,181 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,181 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,182 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-01-10 07:10:07,185 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-01-10 07:10:07,186 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-01-10 07:10:07,196 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,197 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,197 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,197 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,197 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,197 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,197 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,200 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,206 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-01-10 07:10:07,206 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,206 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,208 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-01-10 07:10:07,209 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-01-10 07:10:07,210 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-01-10 07:10:07,220 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,220 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,220 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,220 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,220 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,221 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,221 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,222 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,228 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-01-10 07:10:07,228 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,228 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,230 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-01-10 07:10:07,232 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-01-10 07:10:07,232 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-01-10 07:10:07,242 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,242 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,242 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,242 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,242 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,243 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,243 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,244 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,251 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,251 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,251 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,253 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-01-10 07:10:07,254 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-01-10 07:10:07,255 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-01-10 07:10:07,265 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,265 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,265 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,265 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,265 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,266 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,266 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,267 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,274 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,274 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,274 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,277 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-01-10 07:10:07,280 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-01-10 07:10:07,281 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-01-10 07:10:07,292 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,292 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,292 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,292 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,292 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,293 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,293 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,295 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,304 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-01-10 07:10:07,304 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,304 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,308 INFO L229 MonitoredProcess]: Starting monitored process 23 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-01-10 07:10:07,312 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Waiting until timeout for monitored process [2025-01-10 07:10:07,313 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-01-10 07:10:07,324 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,324 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,324 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,324 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,326 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:07,326 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:07,329 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,335 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,335 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,335 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,338 INFO L229 MonitoredProcess]: Starting monitored process 24 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-01-10 07:10:07,344 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Waiting until timeout for monitored process [2025-01-10 07:10:07,345 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-01-10 07:10:07,356 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,356 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,356 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,356 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,356 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,357 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,357 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,359 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,368 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,369 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,369 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,371 INFO L229 MonitoredProcess]: Starting monitored process 25 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-01-10 07:10:07,374 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Waiting until timeout for monitored process [2025-01-10 07:10:07,378 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-01-10 07:10:07,391 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,391 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,391 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,391 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,391 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,392 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,392 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,393 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,399 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Ended with exit code 0 [2025-01-10 07:10:07,399 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,400 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,408 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-01-10 07:10:07,409 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-01-10 07:10:07,413 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-01-10 07:10:07,434 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,434 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,434 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,434 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,434 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,434 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,435 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,439 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,450 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Ended with exit code 0 [2025-01-10 07:10:07,450 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,450 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,454 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-01-10 07:10:07,458 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-01-10 07:10:07,459 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-01-10 07:10:07,469 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,469 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,469 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,470 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,470 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,470 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,470 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,471 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,477 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Ended with exit code 0 [2025-01-10 07:10:07,477 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,478 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,479 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-01-10 07:10:07,480 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-01-10 07:10:07,482 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-01-10 07:10:07,491 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,492 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,492 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,492 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,492 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,497 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,497 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,500 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,506 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,507 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,507 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,510 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-01-10 07:10:07,513 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-01-10 07:10:07,513 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-01-10 07:10:07,530 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,530 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,531 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,531 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,531 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,531 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,531 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,534 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,540 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Ended with exit code 0 [2025-01-10 07:10:07,540 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,540 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,542 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-01-10 07:10:07,543 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-01-10 07:10:07,544 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-01-10 07:10:07,555 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,555 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,555 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,555 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,555 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,556 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,556 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,560 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,566 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Ended with exit code 0 [2025-01-10 07:10:07,566 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,566 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,568 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-01-10 07:10:07,569 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-01-10 07:10:07,570 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-01-10 07:10:07,580 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,580 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,581 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,581 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,581 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,583 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,583 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,584 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,590 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-01-10 07:10:07,590 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,591 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,592 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-01-10 07:10:07,594 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-01-10 07:10:07,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-01-10 07:10:07,606 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,606 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,606 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,606 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,606 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,608 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,608 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,609 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,614 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-01-10 07:10:07,615 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,615 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,616 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-01-10 07:10:07,618 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-01-10 07:10:07,621 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-01-10 07:10:07,631 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,631 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,631 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,631 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,631 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,632 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,632 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,633 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,639 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,639 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,639 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,642 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-01-10 07:10:07,644 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-01-10 07:10:07,645 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-01-10 07:10:07,655 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,655 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,655 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,655 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,655 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,655 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,655 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,657 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,662 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,663 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,663 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,665 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-01-10 07:10:07,666 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-01-10 07:10:07,666 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-01-10 07:10:07,676 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,676 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,676 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,676 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,676 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,681 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,681 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,682 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,692 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,693 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,693 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,696 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-01-10 07:10:07,697 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-01-10 07:10:07,697 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-01-10 07:10:07,707 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,707 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,707 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,707 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,707 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,711 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,711 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,713 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,722 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-01-10 07:10:07,722 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,722 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,724 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-01-10 07:10:07,725 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-01-10 07:10:07,726 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-01-10 07:10:07,736 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,736 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,736 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,736 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,736 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,736 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,736 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,737 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,743 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-01-10 07:10:07,744 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,744 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,745 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-01-10 07:10:07,746 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-01-10 07:10:07,747 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-01-10 07:10:07,759 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,759 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:07,759 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,759 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,759 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,759 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:07,759 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:07,760 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:07,765 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-01-10 07:10:07,766 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,766 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,767 INFO L229 MonitoredProcess]: Starting monitored process 39 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-01-10 07:10:07,769 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Waiting until timeout for monitored process [2025-01-10 07:10:07,770 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-01-10 07:10:07,779 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:07,780 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:07,780 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:07,780 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:07,788 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:07,788 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:07,796 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-01-10 07:10:07,813 INFO L443 ModelExtractionUtils]: Simplification made 9 calls to the SMT solver. [2025-01-10 07:10:07,813 INFO L444 ModelExtractionUtils]: 0 out of 7 variables were initially zero. Simplification set additionally 5 variables to zero. [2025-01-10 07:10:07,813 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:07,813 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:07,815 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-01-10 07:10:07,817 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-01-10 07:10:07,817 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-01-10 07:10:07,830 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2025-01-10 07:10:07,830 INFO L474 LassoAnalysis]: Proved termination. [2025-01-10 07:10:07,830 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(merge_sort_#in~n#1) = 1*merge_sort_#in~n#1 Supporting invariants [] [2025-01-10 07:10:07,836 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:07,846 INFO L156 tatePredicateManager]: 2 out of 2 supporting invariants were superfluous and have been removed [2025-01-10 07:10:07,854 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:07,865 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:07,875 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:07,876 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:07,876 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:07,876 INFO L256 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-01-10 07:10:07,877 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:07,889 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:07,893 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:07,893 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:07,894 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:07,894 INFO L256 TraceCheckSpWp]: Trace formula consists of 55 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-01-10 07:10:07,894 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:07,919 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:07,920 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-01-10 07:10:07,920 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 23 states and 31 transitions. cyclomatic complexity: 12 Second operand has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 3 states have internal predecessors, (7), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-10 07:10:07,961 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 23 states and 31 transitions. cyclomatic complexity: 12. Second operand has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 3 states have internal predecessors, (7), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 41 states and 53 transitions. Complement of second has 16 states. [2025-01-10 07:10:07,964 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-01-10 07:10:07,964 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 3 states have internal predecessors, (7), 2 states have call successors, (2), 1 states have call predecessors, (2), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-01-10 07:10:07,964 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 11 transitions. [2025-01-10 07:10:07,964 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 11 transitions. Stem has 7 letters. Loop has 3 letters. [2025-01-10 07:10:07,965 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:07,965 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 11 transitions. Stem has 10 letters. Loop has 3 letters. [2025-01-10 07:10:07,965 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:07,965 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 11 transitions. Stem has 7 letters. Loop has 6 letters. [2025-01-10 07:10:07,965 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:07,965 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 41 states and 53 transitions. [2025-01-10 07:10:07,966 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2025-01-10 07:10:07,969 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 41 states to 32 states and 44 transitions. [2025-01-10 07:10:07,969 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 24 [2025-01-10 07:10:07,969 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2025-01-10 07:10:07,969 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32 states and 44 transitions. [2025-01-10 07:10:07,969 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:07,969 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32 states and 44 transitions. [2025-01-10 07:10:07,969 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states and 44 transitions. [2025-01-10 07:10:07,972 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 30. [2025-01-10 07:10:07,972 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 24 states have (on average 1.3333333333333333) internal successors, (32), 24 states have internal predecessors, (32), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2025-01-10 07:10:07,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 40 transitions. [2025-01-10 07:10:07,974 INFO L240 hiAutomatonCegarLoop]: Abstraction has 30 states and 40 transitions. [2025-01-10 07:10:07,974 INFO L432 stractBuchiCegarLoop]: Abstraction has 30 states and 40 transitions. [2025-01-10 07:10:07,974 INFO L338 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2025-01-10 07:10:07,974 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 30 states and 40 transitions. [2025-01-10 07:10:07,975 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 12 [2025-01-10 07:10:07,975 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:07,975 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:07,976 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:07,979 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [2, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:07,980 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" [2025-01-10 07:10:07,980 INFO L754 eck$LassoCheckResult]: Loop: "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" [2025-01-10 07:10:07,980 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:07,980 INFO L85 PathProgramCache]: Analyzing trace with hash 1179227481, now seen corresponding path program 1 times [2025-01-10 07:10:07,980 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:07,980 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1053390732] [2025-01-10 07:10:07,980 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:07,980 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:07,991 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 14 statements into 1 equivalence classes. [2025-01-10 07:10:08,006 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 14 of 14 statements. [2025-01-10 07:10:08,006 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:08,007 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:08,007 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:08,011 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 14 statements into 1 equivalence classes. [2025-01-10 07:10:08,020 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 14 of 14 statements. [2025-01-10 07:10:08,021 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:08,021 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:08,024 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:08,025 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:08,025 INFO L85 PathProgramCache]: Analyzing trace with hash -21229677, now seen corresponding path program 1 times [2025-01-10 07:10:08,025 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:08,025 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [711807494] [2025-01-10 07:10:08,025 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:08,025 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:08,027 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 8 statements into 1 equivalence classes. [2025-01-10 07:10:08,030 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 8 of 8 statements. [2025-01-10 07:10:08,030 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:08,030 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:08,030 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:08,031 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 8 statements into 1 equivalence classes. [2025-01-10 07:10:08,036 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 8 of 8 statements. [2025-01-10 07:10:08,036 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:08,036 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:08,038 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:08,038 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:08,038 INFO L85 PathProgramCache]: Analyzing trace with hash -1205416725, now seen corresponding path program 1 times [2025-01-10 07:10:08,038 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:08,038 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1116832927] [2025-01-10 07:10:08,038 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:08,038 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:08,042 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-01-10 07:10:08,052 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-01-10 07:10:08,055 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:08,056 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:08,248 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:08,313 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 5 proven. 9 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2025-01-10 07:10:08,313 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:08,313 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1116832927] [2025-01-10 07:10:08,313 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1116832927] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:08,313 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1530149808] [2025-01-10 07:10:08,313 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:08,313 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:08,313 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:08,317 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:10:08,318 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2025-01-10 07:10:08,356 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 22 statements into 1 equivalence classes. [2025-01-10 07:10:08,369 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 22 of 22 statements. [2025-01-10 07:10:08,369 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:08,369 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:08,370 INFO L256 TraceCheckSpWp]: Trace formula consists of 136 conjuncts, 11 conjuncts are in the unsatisfiable core [2025-01-10 07:10:08,372 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:08,426 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 13 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:08,426 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:08,512 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 5 proven. 9 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2025-01-10 07:10:08,512 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1530149808] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:08,512 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:08,512 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11, 11] total 14 [2025-01-10 07:10:08,512 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [320605724] [2025-01-10 07:10:08,513 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:08,818 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:08,819 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2025-01-10 07:10:08,819 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=145, Unknown=0, NotChecked=0, Total=182 [2025-01-10 07:10:08,819 INFO L87 Difference]: Start difference. First operand 30 states and 40 transitions. cyclomatic complexity: 15 Second operand has 14 states, 10 states have (on average 2.0) internal successors, (20), 12 states have internal predecessors, (20), 5 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2025-01-10 07:10:08,913 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:08,913 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2025-01-10 07:10:08,914 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 57 states and 72 transitions. [2025-01-10 07:10:08,915 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 20 [2025-01-10 07:10:08,919 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 57 states to 53 states and 68 transitions. [2025-01-10 07:10:08,919 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 44 [2025-01-10 07:10:08,919 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 47 [2025-01-10 07:10:08,920 INFO L73 IsDeterministic]: Start isDeterministic. Operand 53 states and 68 transitions. [2025-01-10 07:10:08,920 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:08,920 INFO L218 hiAutomatonCegarLoop]: Abstraction has 53 states and 68 transitions. [2025-01-10 07:10:08,920 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states and 68 transitions. [2025-01-10 07:10:08,921 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 53. [2025-01-10 07:10:08,922 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 42 states have (on average 1.3095238095238095) internal successors, (55), 42 states have internal predecessors, (55), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2025-01-10 07:10:08,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 68 transitions. [2025-01-10 07:10:08,923 INFO L240 hiAutomatonCegarLoop]: Abstraction has 53 states and 68 transitions. [2025-01-10 07:10:08,924 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2025-01-10 07:10:08,924 INFO L432 stractBuchiCegarLoop]: Abstraction has 53 states and 68 transitions. [2025-01-10 07:10:08,927 INFO L338 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2025-01-10 07:10:08,928 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 53 states and 68 transitions. [2025-01-10 07:10:08,928 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 20 [2025-01-10 07:10:08,928 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:08,928 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:08,929 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:08,929 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [2, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:08,929 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" [2025-01-10 07:10:08,929 INFO L754 eck$LassoCheckResult]: Loop: "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" [2025-01-10 07:10:08,929 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:08,929 INFO L85 PathProgramCache]: Analyzing trace with hash -892889758, now seen corresponding path program 2 times [2025-01-10 07:10:08,929 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:08,929 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [371594375] [2025-01-10 07:10:08,929 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:08,929 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:08,937 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 15 statements into 2 equivalence classes. [2025-01-10 07:10:08,947 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 15 of 15 statements. [2025-01-10 07:10:08,951 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:10:08,952 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:08,952 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:08,954 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 15 statements into 1 equivalence classes. [2025-01-10 07:10:08,962 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 15 of 15 statements. [2025-01-10 07:10:08,965 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:08,966 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:08,968 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:08,972 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:08,972 INFO L85 PathProgramCache]: Analyzing trace with hash -21229677, now seen corresponding path program 2 times [2025-01-10 07:10:08,972 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:08,972 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [533435348] [2025-01-10 07:10:08,972 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:08,972 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:08,975 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 8 statements into 2 equivalence classes. [2025-01-10 07:10:08,981 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 8 of 8 statements. [2025-01-10 07:10:08,981 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:10:08,981 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:08,981 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:08,982 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 8 statements into 1 equivalence classes. [2025-01-10 07:10:08,987 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 8 of 8 statements. [2025-01-10 07:10:08,987 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:08,988 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:08,989 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:08,993 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:08,993 INFO L85 PathProgramCache]: Analyzing trace with hash 353154036, now seen corresponding path program 2 times [2025-01-10 07:10:08,993 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:08,993 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [223508019] [2025-01-10 07:10:08,993 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:08,993 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:09,002 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 23 statements into 2 equivalence classes. [2025-01-10 07:10:09,040 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 23 of 23 statements. [2025-01-10 07:10:09,040 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:10:09,041 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:09,041 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:09,043 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 23 statements into 1 equivalence classes. [2025-01-10 07:10:09,059 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-01-10 07:10:09,063 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:09,064 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:09,067 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:10,054 INFO L204 LassoAnalysis]: Preferences: [2025-01-10 07:10:10,055 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-01-10 07:10:10,055 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-01-10 07:10:10,055 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-01-10 07:10:10,055 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-01-10 07:10:10,055 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,055 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-01-10 07:10:10,055 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-01-10 07:10:10,055 INFO L132 ssoRankerPreferences]: Filename of dumped script: mergeSort.i_Iteration6_Lasso [2025-01-10 07:10:10,055 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-01-10 07:10:10,055 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-01-10 07:10:10,058 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,062 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,064 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,065 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,067 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,068 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,069 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,071 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,228 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,230 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,232 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,233 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,235 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,237 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,238 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,240 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,241 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,242 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,244 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,245 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,247 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,248 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,250 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,251 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,252 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,254 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,256 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,257 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,259 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,260 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,262 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,263 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,265 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,267 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,268 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,270 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,271 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,272 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,274 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,280 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,281 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:10,631 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-01-10 07:10:10,631 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-01-10 07:10:10,631 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,631 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,635 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-01-10 07:10:10,636 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-01-10 07:10:10,637 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-01-10 07:10:10,648 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:10,648 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:10,648 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:10,648 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:10,648 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:10,648 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:10,648 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:10,650 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:10,656 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:10,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,658 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-01-10 07:10:10,660 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-01-10 07:10:10,661 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-01-10 07:10:10,671 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:10,671 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:10,671 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:10,672 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:10,672 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:10,672 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:10,672 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:10,673 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:10,679 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Ended with exit code 0 [2025-01-10 07:10:10,679 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,679 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,681 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-01-10 07:10:10,682 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-01-10 07:10:10,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-01-10 07:10:10,693 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:10,693 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:10,693 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:10,693 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:10,693 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:10,694 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:10,694 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:10,695 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:10,700 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-01-10 07:10:10,701 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,701 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,703 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-01-10 07:10:10,704 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-01-10 07:10:10,705 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-01-10 07:10:10,714 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:10,714 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:10,714 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:10,714 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:10,715 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:10,715 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:10,715 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:10,716 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:10,722 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-01-10 07:10:10,722 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,722 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,724 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-01-10 07:10:10,725 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-01-10 07:10:10,726 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-01-10 07:10:10,736 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:10,736 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:10,736 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:10,736 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:10,736 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:10,736 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:10,737 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:10,738 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:10,743 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-01-10 07:10:10,744 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,744 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,746 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-01-10 07:10:10,747 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-01-10 07:10:10,747 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-01-10 07:10:10,757 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:10,757 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:10,757 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:10,757 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:10,757 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:10,758 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:10,758 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:10,759 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:10,765 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:10,766 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,766 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,768 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-01-10 07:10:10,770 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-01-10 07:10:10,771 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-01-10 07:10:10,781 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:10,781 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:10,781 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:10,781 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:10,781 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:10,782 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:10,782 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:10,783 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:10,790 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Ended with exit code 0 [2025-01-10 07:10:10,791 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,791 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,793 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-01-10 07:10:10,794 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-01-10 07:10:10,798 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-01-10 07:10:10,808 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:10,808 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:10,808 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:10,808 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:10,809 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:10,809 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:10,813 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:10,822 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-01-10 07:10:10,822 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,822 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,824 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-01-10 07:10:10,825 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-01-10 07:10:10,826 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-01-10 07:10:10,836 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:10,837 INFO L203 nArgumentSynthesizer]: 2 stem disjuncts [2025-01-10 07:10:10,837 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:10,837 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:10,839 INFO L401 nArgumentSynthesizer]: We have 8 Motzkin's Theorem applications. [2025-01-10 07:10:10,839 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:10,844 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:10,851 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-01-10 07:10:10,851 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,851 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,854 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-01-10 07:10:10,858 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-01-10 07:10:10,859 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-01-10 07:10:10,875 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:10,875 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:10,875 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:10,875 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:10,881 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:10,881 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:10,893 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-01-10 07:10:10,910 INFO L443 ModelExtractionUtils]: Simplification made 12 calls to the SMT solver. [2025-01-10 07:10:10,910 INFO L444 ModelExtractionUtils]: 0 out of 25 variables were initially zero. Simplification set additionally 16 variables to zero. [2025-01-10 07:10:10,910 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:10,910 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:10,912 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-01-10 07:10:10,914 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-01-10 07:10:10,914 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-01-10 07:10:10,926 INFO L438 nArgumentSynthesizer]: Removed 1 redundant supporting invariants from a total of 2. [2025-01-10 07:10:10,926 INFO L474 LassoAnalysis]: Proved termination. [2025-01-10 07:10:10,926 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(merge_sort_#in~n#1, merge_sort_~n#1) = -1*merge_sort_#in~n#1 + 5*merge_sort_~n#1 Supporting invariants [-1*merge_sort_#in~n#1 + 5*merge_sort_~m~0#1 + 1 >= 0] [2025-01-10 07:10:10,933 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Ended with exit code 0 [2025-01-10 07:10:10,937 INFO L156 tatePredicateManager]: 1 out of 2 supporting invariants were superfluous and have been removed [2025-01-10 07:10:10,958 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:10,967 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 15 statements into 1 equivalence classes. [2025-01-10 07:10:10,982 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 15 of 15 statements. [2025-01-10 07:10:10,982 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:10,982 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:10,983 INFO L256 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 14 conjuncts are in the unsatisfiable core [2025-01-10 07:10:10,984 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:11,177 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 8 statements into 1 equivalence classes. [2025-01-10 07:10:11,202 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 8 of 8 statements. [2025-01-10 07:10:11,203 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:11,203 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:11,204 INFO L256 TraceCheckSpWp]: Trace formula consists of 109 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-01-10 07:10:11,205 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:11,356 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:11,357 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.9 stem predicates 5 loop predicates [2025-01-10 07:10:11,357 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 53 states and 68 transitions. cyclomatic complexity: 22 Second operand has 14 states, 11 states have (on average 1.5454545454545454) internal successors, (17), 11 states have internal predecessors, (17), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2025-01-10 07:10:11,716 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 53 states and 68 transitions. cyclomatic complexity: 22. Second operand has 14 states, 11 states have (on average 1.5454545454545454) internal successors, (17), 11 states have internal predecessors, (17), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Result 192 states and 268 transitions. Complement of second has 39 states. [2025-01-10 07:10:11,717 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 16 states 10 stem states 4 non-accepting loop states 2 accepting loop states [2025-01-10 07:10:11,717 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 11 states have (on average 1.5454545454545454) internal successors, (17), 11 states have internal predecessors, (17), 4 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2025-01-10 07:10:11,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 55 transitions. [2025-01-10 07:10:11,721 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 16 states and 55 transitions. Stem has 15 letters. Loop has 8 letters. [2025-01-10 07:10:11,722 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:11,722 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 16 states and 55 transitions. Stem has 23 letters. Loop has 8 letters. [2025-01-10 07:10:11,722 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:11,722 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 16 states and 55 transitions. Stem has 15 letters. Loop has 16 letters. [2025-01-10 07:10:11,722 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:11,722 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 192 states and 268 transitions. [2025-01-10 07:10:11,726 INFO L131 ngComponentsAnalysis]: Automaton has 12 accepting balls. 48 [2025-01-10 07:10:11,729 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 192 states to 165 states and 232 transitions. [2025-01-10 07:10:11,729 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 110 [2025-01-10 07:10:11,729 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 114 [2025-01-10 07:10:11,729 INFO L73 IsDeterministic]: Start isDeterministic. Operand 165 states and 232 transitions. [2025-01-10 07:10:11,730 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:11,730 INFO L218 hiAutomatonCegarLoop]: Abstraction has 165 states and 232 transitions. [2025-01-10 07:10:11,730 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 165 states and 232 transitions. [2025-01-10 07:10:11,736 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 165 to 154. [2025-01-10 07:10:11,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 154 states, 119 states have (on average 1.3697478991596639) internal successors, (163), 120 states have internal predecessors, (163), 23 states have call successors, (25), 15 states have call predecessors, (25), 12 states have return successors, (25), 18 states have call predecessors, (25), 21 states have call successors, (25) [2025-01-10 07:10:11,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 213 transitions. [2025-01-10 07:10:11,738 INFO L240 hiAutomatonCegarLoop]: Abstraction has 154 states and 213 transitions. [2025-01-10 07:10:11,738 INFO L432 stractBuchiCegarLoop]: Abstraction has 154 states and 213 transitions. [2025-01-10 07:10:11,738 INFO L338 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2025-01-10 07:10:11,738 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 154 states and 213 transitions. [2025-01-10 07:10:11,739 INFO L131 ngComponentsAnalysis]: Automaton has 12 accepting balls. 48 [2025-01-10 07:10:11,740 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:11,740 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:11,743 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:11,743 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2025-01-10 07:10:11,744 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" [2025-01-10 07:10:11,744 INFO L754 eck$LassoCheckResult]: Loop: "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" [2025-01-10 07:10:11,744 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:11,744 INFO L85 PathProgramCache]: Analyzing trace with hash 2130539909, now seen corresponding path program 1 times [2025-01-10 07:10:11,744 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:11,744 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1624623654] [2025-01-10 07:10:11,745 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:11,745 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:11,749 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 20 statements into 1 equivalence classes. [2025-01-10 07:10:11,761 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 20 of 20 statements. [2025-01-10 07:10:11,761 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:11,761 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:11,762 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:11,764 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 20 statements into 1 equivalence classes. [2025-01-10 07:10:11,779 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 20 of 20 statements. [2025-01-10 07:10:11,779 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:11,779 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:11,782 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:11,787 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:11,787 INFO L85 PathProgramCache]: Analyzing trace with hash 40828, now seen corresponding path program 1 times [2025-01-10 07:10:11,787 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:11,787 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [584903685] [2025-01-10 07:10:11,787 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:11,788 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:11,794 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:11,796 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:11,799 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:11,800 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:11,800 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:11,801 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:11,802 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:11,802 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:11,802 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:11,803 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:11,804 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:11,804 INFO L85 PathProgramCache]: Analyzing trace with hash -112260232, now seen corresponding path program 1 times [2025-01-10 07:10:11,804 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:11,804 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1778425668] [2025-01-10 07:10:11,804 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:11,804 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:11,809 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 23 statements into 1 equivalence classes. [2025-01-10 07:10:11,814 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-01-10 07:10:11,815 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:11,815 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:11,870 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:11,982 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2025-01-10 07:10:11,982 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:11,982 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1778425668] [2025-01-10 07:10:11,982 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1778425668] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-10 07:10:11,982 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-10 07:10:11,982 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-01-10 07:10:11,983 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [491496747] [2025-01-10 07:10:11,983 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-10 07:10:12,047 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:12,047 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-01-10 07:10:12,047 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-01-10 07:10:12,047 INFO L87 Difference]: Start difference. First operand 154 states and 213 transitions. cyclomatic complexity: 79 Second operand has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 states have internal predecessors, (13), 2 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2025-01-10 07:10:12,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:12,082 INFO L93 Difference]: Finished difference Result 196 states and 268 transitions. [2025-01-10 07:10:12,082 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 196 states and 268 transitions. [2025-01-10 07:10:12,087 INFO L131 ngComponentsAnalysis]: Automaton has 17 accepting balls. 78 [2025-01-10 07:10:12,090 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 196 states to 196 states and 268 transitions. [2025-01-10 07:10:12,091 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 139 [2025-01-10 07:10:12,091 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 139 [2025-01-10 07:10:12,092 INFO L73 IsDeterministic]: Start isDeterministic. Operand 196 states and 268 transitions. [2025-01-10 07:10:12,092 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:12,092 INFO L218 hiAutomatonCegarLoop]: Abstraction has 196 states and 268 transitions. [2025-01-10 07:10:12,092 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 196 states and 268 transitions. [2025-01-10 07:10:12,101 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 196 to 189. [2025-01-10 07:10:12,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 189 states, 154 states have (on average 1.3311688311688312) internal successors, (205), 155 states have internal predecessors, (205), 23 states have call successors, (25), 15 states have call predecessors, (25), 12 states have return successors, (25), 18 states have call predecessors, (25), 21 states have call successors, (25) [2025-01-10 07:10:12,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 189 states to 189 states and 255 transitions. [2025-01-10 07:10:12,108 INFO L240 hiAutomatonCegarLoop]: Abstraction has 189 states and 255 transitions. [2025-01-10 07:10:12,109 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-01-10 07:10:12,109 INFO L432 stractBuchiCegarLoop]: Abstraction has 189 states and 255 transitions. [2025-01-10 07:10:12,109 INFO L338 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2025-01-10 07:10:12,109 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 189 states and 255 transitions. [2025-01-10 07:10:12,111 INFO L131 ngComponentsAnalysis]: Automaton has 12 accepting balls. 73 [2025-01-10 07:10:12,112 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:12,112 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:12,112 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:12,113 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:12,113 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" [2025-01-10 07:10:12,113 INFO L754 eck$LassoCheckResult]: Loop: "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume !(merge_#t~mem6#1 < merge_#t~mem7#1);merge_#t~post10#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post10#1;call merge_#t~mem11#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post10#1, 4);merge_#t~ite12#1 := merge_#t~mem11#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" [2025-01-10 07:10:12,114 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:12,114 INFO L85 PathProgramCache]: Analyzing trace with hash 2130539909, now seen corresponding path program 2 times [2025-01-10 07:10:12,114 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:12,114 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [418828303] [2025-01-10 07:10:12,114 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:12,114 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:12,120 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 20 statements into 2 equivalence classes. [2025-01-10 07:10:12,132 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 20 of 20 statements. [2025-01-10 07:10:12,132 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:10:12,132 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:12,132 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:12,134 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 20 statements into 1 equivalence classes. [2025-01-10 07:10:12,138 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 20 of 20 statements. [2025-01-10 07:10:12,139 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:12,139 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:12,143 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:12,147 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:12,147 INFO L85 PathProgramCache]: Analyzing trace with hash -901288269, now seen corresponding path program 1 times [2025-01-10 07:10:12,147 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:12,147 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [769703626] [2025-01-10 07:10:12,147 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:12,147 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:12,149 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:12,152 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:12,152 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:12,152 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:12,152 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:12,153 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:12,155 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:12,156 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:12,156 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:12,157 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:12,158 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:12,159 INFO L85 PathProgramCache]: Analyzing trace with hash 1581743279, now seen corresponding path program 1 times [2025-01-10 07:10:12,159 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:12,159 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [134748552] [2025-01-10 07:10:12,159 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:12,159 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:12,164 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 27 statements into 1 equivalence classes. [2025-01-10 07:10:12,183 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 27 of 27 statements. [2025-01-10 07:10:12,184 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:12,184 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:12,184 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:12,186 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 27 statements into 1 equivalence classes. [2025-01-10 07:10:12,206 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 27 of 27 statements. [2025-01-10 07:10:12,207 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:12,207 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:12,210 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:13,356 INFO L204 LassoAnalysis]: Preferences: [2025-01-10 07:10:13,356 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-01-10 07:10:13,357 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-01-10 07:10:13,357 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-01-10 07:10:13,357 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-01-10 07:10:13,357 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:13,357 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-01-10 07:10:13,357 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-01-10 07:10:13,357 INFO L132 ssoRankerPreferences]: Filename of dumped script: mergeSort.i_Iteration8_Lasso [2025-01-10 07:10:13,357 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-01-10 07:10:13,357 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-01-10 07:10:13,359 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,360 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,362 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,642 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,643 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,645 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,646 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,648 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,649 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,651 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,652 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,653 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,654 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,656 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,657 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,658 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,660 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,661 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,662 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,663 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,665 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,666 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,667 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,669 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,670 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,671 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,673 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,674 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,676 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,677 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,678 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,680 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:13,681 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:14,107 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-01-10 07:10:14,107 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-01-10 07:10:14,108 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:14,108 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:14,110 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-01-10 07:10:14,112 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-01-10 07:10:14,113 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-01-10 07:10:14,123 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:14,123 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:14,124 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:14,124 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:14,124 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:14,125 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:14,125 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:14,126 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:14,132 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-01-10 07:10:14,132 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:14,132 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:14,134 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-01-10 07:10:14,135 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-01-10 07:10:14,136 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-01-10 07:10:14,146 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:14,146 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:14,146 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:14,146 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:14,146 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:14,147 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:14,147 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:14,152 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:14,157 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:14,157 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:14,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:14,160 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-01-10 07:10:14,161 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-01-10 07:10:14,162 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-01-10 07:10:14,172 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:14,172 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:14,172 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:14,172 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:14,172 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:14,172 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:14,172 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:14,173 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:14,179 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-01-10 07:10:14,180 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:14,180 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:14,181 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-01-10 07:10:14,182 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-01-10 07:10:14,183 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-01-10 07:10:14,194 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:14,194 INFO L203 nArgumentSynthesizer]: 4 stem disjuncts [2025-01-10 07:10:14,194 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:14,194 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:14,201 INFO L401 nArgumentSynthesizer]: We have 12 Motzkin's Theorem applications. [2025-01-10 07:10:14,201 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:14,212 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:14,222 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-01-10 07:10:14,222 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:14,222 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:14,224 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-01-10 07:10:14,225 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-01-10 07:10:14,226 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-01-10 07:10:14,236 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:14,236 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:14,236 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:14,236 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:14,237 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:14,237 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:14,240 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:14,250 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-01-10 07:10:14,250 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:14,250 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:14,252 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-01-10 07:10:14,253 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-01-10 07:10:14,254 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-01-10 07:10:14,263 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:14,263 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:14,263 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:14,263 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:14,265 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:14,265 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:14,267 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:14,273 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:14,273 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:14,273 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:14,275 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-01-10 07:10:14,277 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-01-10 07:10:14,278 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-01-10 07:10:14,289 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:14,289 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:14,289 INFO L204 nArgumentSynthesizer]: 4 loop disjuncts [2025-01-10 07:10:14,289 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:14,375 INFO L401 nArgumentSynthesizer]: We have 48 Motzkin's Theorem applications. [2025-01-10 07:10:14,375 INFO L402 nArgumentSynthesizer]: A total of 8 supporting invariants were added. [2025-01-10 07:10:14,865 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-01-10 07:10:15,993 INFO L443 ModelExtractionUtils]: Simplification made 86 calls to the SMT solver. [2025-01-10 07:10:15,994 INFO L444 ModelExtractionUtils]: 17 out of 100 variables were initially zero. Simplification set additionally 80 variables to zero. [2025-01-10 07:10:15,994 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:15,994 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:15,996 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-01-10 07:10:15,997 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-01-10 07:10:15,998 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-01-10 07:10:16,012 INFO L438 nArgumentSynthesizer]: Removed 8 redundant supporting invariants from a total of 8. [2025-01-10 07:10:16,012 INFO L474 LassoAnalysis]: Proved termination. [2025-01-10 07:10:16,012 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(merge_sort_merge_~n#1, merge_sort_merge_~k~0#1) = 1*merge_sort_merge_~n#1 - 1*merge_sort_merge_~k~0#1 Supporting invariants [] [2025-01-10 07:10:16,024 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:16,045 INFO L156 tatePredicateManager]: 9 out of 9 supporting invariants were superfluous and have been removed [2025-01-10 07:10:16,052 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:16,072 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 20 statements into 1 equivalence classes. [2025-01-10 07:10:16,088 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 20 of 20 statements. [2025-01-10 07:10:16,088 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:16,088 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:16,089 INFO L256 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-01-10 07:10:16,090 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:16,151 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:16,157 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:16,157 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:16,157 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:16,158 INFO L256 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-01-10 07:10:16,158 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:16,177 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:16,178 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 2 loop predicates [2025-01-10 07:10:16,178 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 189 states and 255 transitions. cyclomatic complexity: 86 Second operand has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2025-01-10 07:10:16,230 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 189 states and 255 transitions. cyclomatic complexity: 86. Second operand has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Result 407 states and 573 transitions. Complement of second has 10 states. [2025-01-10 07:10:16,233 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 2 stem states 1 non-accepting loop states 1 accepting loop states [2025-01-10 07:10:16,233 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.5) internal successors, (18), 4 states have internal predecessors, (18), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2025-01-10 07:10:16,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 25 transitions. [2025-01-10 07:10:16,235 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 25 transitions. Stem has 20 letters. Loop has 7 letters. [2025-01-10 07:10:16,235 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:16,235 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 25 transitions. Stem has 27 letters. Loop has 7 letters. [2025-01-10 07:10:16,235 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:16,235 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 25 transitions. Stem has 20 letters. Loop has 14 letters. [2025-01-10 07:10:16,236 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:16,236 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 407 states and 573 transitions. [2025-01-10 07:10:16,239 INFO L131 ngComponentsAnalysis]: Automaton has 12 accepting balls. 65 [2025-01-10 07:10:16,243 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 407 states to 327 states and 463 transitions. [2025-01-10 07:10:16,243 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 153 [2025-01-10 07:10:16,244 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 158 [2025-01-10 07:10:16,244 INFO L73 IsDeterministic]: Start isDeterministic. Operand 327 states and 463 transitions. [2025-01-10 07:10:16,245 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:16,245 INFO L218 hiAutomatonCegarLoop]: Abstraction has 327 states and 463 transitions. [2025-01-10 07:10:16,246 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 327 states and 463 transitions. [2025-01-10 07:10:16,258 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 327 to 274. [2025-01-10 07:10:16,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 274 states, 226 states have (on average 1.3495575221238938) internal successors, (305), 226 states have internal predecessors, (305), 31 states have call successors, (34), 20 states have call predecessors, (34), 17 states have return successors, (43), 27 states have call predecessors, (43), 29 states have call successors, (43) [2025-01-10 07:10:16,261 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 274 states to 274 states and 382 transitions. [2025-01-10 07:10:16,261 INFO L240 hiAutomatonCegarLoop]: Abstraction has 274 states and 382 transitions. [2025-01-10 07:10:16,261 INFO L432 stractBuchiCegarLoop]: Abstraction has 274 states and 382 transitions. [2025-01-10 07:10:16,261 INFO L338 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2025-01-10 07:10:16,261 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 274 states and 382 transitions. [2025-01-10 07:10:16,264 INFO L131 ngComponentsAnalysis]: Automaton has 12 accepting balls. 65 [2025-01-10 07:10:16,264 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:16,264 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:16,264 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:16,264 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2025-01-10 07:10:16,265 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" [2025-01-10 07:10:16,265 INFO L754 eck$LassoCheckResult]: Loop: "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" [2025-01-10 07:10:16,265 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:16,265 INFO L85 PathProgramCache]: Analyzing trace with hash 1622227773, now seen corresponding path program 1 times [2025-01-10 07:10:16,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:16,265 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1917136363] [2025-01-10 07:10:16,266 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:16,266 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:16,271 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 21 statements into 1 equivalence classes. [2025-01-10 07:10:16,277 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 21 of 21 statements. [2025-01-10 07:10:16,277 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:16,277 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:16,324 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2025-01-10 07:10:16,324 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:16,324 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1917136363] [2025-01-10 07:10:16,324 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1917136363] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-10 07:10:16,325 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-10 07:10:16,325 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-01-10 07:10:16,325 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [972665355] [2025-01-10 07:10:16,325 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-10 07:10:16,325 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:16,325 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:16,325 INFO L85 PathProgramCache]: Analyzing trace with hash 69, now seen corresponding path program 1 times [2025-01-10 07:10:16,326 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:16,326 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1959344526] [2025-01-10 07:10:16,326 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:16,326 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:16,331 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:16,332 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:16,332 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:16,332 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:16,333 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:16,333 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:16,334 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:16,334 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:16,334 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:16,335 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:16,429 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:16,429 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-01-10 07:10:16,429 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-01-10 07:10:16,429 INFO L87 Difference]: Start difference. First operand 274 states and 382 transitions. cyclomatic complexity: 134 Second operand has 4 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2025-01-10 07:10:16,465 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:16,465 INFO L93 Difference]: Finished difference Result 379 states and 504 transitions. [2025-01-10 07:10:16,465 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 379 states and 504 transitions. [2025-01-10 07:10:16,468 INFO L131 ngComponentsAnalysis]: Automaton has 12 accepting balls. 65 [2025-01-10 07:10:16,471 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 379 states to 379 states and 504 transitions. [2025-01-10 07:10:16,471 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 191 [2025-01-10 07:10:16,471 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 191 [2025-01-10 07:10:16,472 INFO L73 IsDeterministic]: Start isDeterministic. Operand 379 states and 504 transitions. [2025-01-10 07:10:16,472 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:16,472 INFO L218 hiAutomatonCegarLoop]: Abstraction has 379 states and 504 transitions. [2025-01-10 07:10:16,473 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 379 states and 504 transitions. [2025-01-10 07:10:16,478 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 379 to 280. [2025-01-10 07:10:16,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 280 states, 232 states have (on average 1.3189655172413792) internal successors, (306), 232 states have internal predecessors, (306), 31 states have call successors, (34), 20 states have call predecessors, (34), 17 states have return successors, (43), 27 states have call predecessors, (43), 29 states have call successors, (43) [2025-01-10 07:10:16,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 280 states to 280 states and 383 transitions. [2025-01-10 07:10:16,484 INFO L240 hiAutomatonCegarLoop]: Abstraction has 280 states and 383 transitions. [2025-01-10 07:10:16,491 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-01-10 07:10:16,491 INFO L432 stractBuchiCegarLoop]: Abstraction has 280 states and 383 transitions. [2025-01-10 07:10:16,491 INFO L338 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2025-01-10 07:10:16,491 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 280 states and 383 transitions. [2025-01-10 07:10:16,493 INFO L131 ngComponentsAnalysis]: Automaton has 12 accepting balls. 65 [2025-01-10 07:10:16,493 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:16,493 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:16,493 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:16,493 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2025-01-10 07:10:16,493 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< [2025-01-10 07:10:16,493 INFO L754 eck$LassoCheckResult]: Loop: "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< [2025-01-10 07:10:16,493 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:16,494 INFO L85 PathProgramCache]: Analyzing trace with hash 427034111, now seen corresponding path program 3 times [2025-01-10 07:10:16,494 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:16,494 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [610060587] [2025-01-10 07:10:16,494 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:10:16,494 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:16,497 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 22 statements into 4 equivalence classes. [2025-01-10 07:10:16,503 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) and asserted 22 of 22 statements. [2025-01-10 07:10:16,504 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2025-01-10 07:10:16,504 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:16,834 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 12 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:16,834 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:16,834 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [610060587] [2025-01-10 07:10:16,834 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [610060587] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:16,834 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1256157166] [2025-01-10 07:10:16,834 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:10:16,834 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:16,834 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:16,836 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-01-10 07:10:16,838 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-01-10 07:10:16,874 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 22 statements into 4 equivalence classes. [2025-01-10 07:10:16,891 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) and asserted 22 of 22 statements. [2025-01-10 07:10:16,891 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2025-01-10 07:10:16,891 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:16,892 INFO L256 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 16 conjuncts are in the unsatisfiable core [2025-01-10 07:10:16,893 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:16,967 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Ended with exit code 0 [2025-01-10 07:10:16,972 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 12 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:16,972 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:17,134 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 12 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:17,134 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1256157166] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:17,134 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:17,134 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15, 15] total 24 [2025-01-10 07:10:17,134 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [909394319] [2025-01-10 07:10:17,134 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:17,136 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:17,136 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:17,136 INFO L85 PathProgramCache]: Analyzing trace with hash 29978, now seen corresponding path program 4 times [2025-01-10 07:10:17,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:17,136 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1324287359] [2025-01-10 07:10:17,136 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:10:17,136 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:17,138 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 3 statements into 2 equivalence classes. [2025-01-10 07:10:17,144 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:17,144 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-01-10 07:10:17,144 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:17,144 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:17,145 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:17,149 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:17,150 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:17,150 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:17,151 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:17,287 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:17,288 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2025-01-10 07:10:17,288 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=91, Invalid=461, Unknown=0, NotChecked=0, Total=552 [2025-01-10 07:10:17,289 INFO L87 Difference]: Start difference. First operand 280 states and 383 transitions. cyclomatic complexity: 129 Second operand has 24 states, 17 states have (on average 1.588235294117647) internal successors, (27), 20 states have internal predecessors, (27), 7 states have call successors, (10), 6 states have call predecessors, (10), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-01-10 07:10:17,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:17,499 INFO L93 Difference]: Finished difference Result 444 states and 597 transitions. [2025-01-10 07:10:17,499 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 444 states and 597 transitions. [2025-01-10 07:10:17,503 INFO L131 ngComponentsAnalysis]: Automaton has 18 accepting balls. 104 [2025-01-10 07:10:17,510 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 444 states to 437 states and 589 transitions. [2025-01-10 07:10:17,510 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 256 [2025-01-10 07:10:17,510 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 270 [2025-01-10 07:10:17,510 INFO L73 IsDeterministic]: Start isDeterministic. Operand 437 states and 589 transitions. [2025-01-10 07:10:17,510 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:17,510 INFO L218 hiAutomatonCegarLoop]: Abstraction has 437 states and 589 transitions. [2025-01-10 07:10:17,511 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 437 states and 589 transitions. [2025-01-10 07:10:17,521 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 437 to 422. [2025-01-10 07:10:17,524 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 422 states, 348 states have (on average 1.3074712643678161) internal successors, (455), 347 states have internal predecessors, (455), 47 states have call successors, (53), 34 states have call predecessors, (53), 27 states have return successors, (61), 40 states have call predecessors, (61), 43 states have call successors, (61) [2025-01-10 07:10:17,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 422 states to 422 states and 569 transitions. [2025-01-10 07:10:17,530 INFO L240 hiAutomatonCegarLoop]: Abstraction has 422 states and 569 transitions. [2025-01-10 07:10:17,531 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2025-01-10 07:10:17,531 INFO L432 stractBuchiCegarLoop]: Abstraction has 422 states and 569 transitions. [2025-01-10 07:10:17,531 INFO L338 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2025-01-10 07:10:17,531 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 422 states and 569 transitions. [2025-01-10 07:10:17,533 INFO L131 ngComponentsAnalysis]: Automaton has 17 accepting balls. 103 [2025-01-10 07:10:17,533 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:17,533 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:17,534 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:17,534 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2025-01-10 07:10:17,534 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< [2025-01-10 07:10:17,534 INFO L754 eck$LassoCheckResult]: Loop: "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< [2025-01-10 07:10:17,534 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:17,534 INFO L85 PathProgramCache]: Analyzing trace with hash -2070067604, now seen corresponding path program 4 times [2025-01-10 07:10:17,534 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:17,538 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2082064840] [2025-01-10 07:10:17,539 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:10:17,539 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:17,546 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 23 statements into 2 equivalence classes. [2025-01-10 07:10:17,557 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 23 of 23 statements. [2025-01-10 07:10:17,560 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-01-10 07:10:17,561 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:17,796 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 11 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:17,796 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:17,796 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2082064840] [2025-01-10 07:10:17,796 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2082064840] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:17,796 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [869765519] [2025-01-10 07:10:17,797 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:10:17,797 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:17,797 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:17,798 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-01-10 07:10:17,800 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-01-10 07:10:17,836 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 23 statements into 2 equivalence classes. [2025-01-10 07:10:17,851 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 23 of 23 statements. [2025-01-10 07:10:17,851 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-01-10 07:10:17,852 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:17,852 INFO L256 TraceCheckSpWp]: Trace formula consists of 172 conjuncts, 17 conjuncts are in the unsatisfiable core [2025-01-10 07:10:17,853 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:17,893 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 10 proven. 15 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:17,893 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:18,011 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 10 proven. 15 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:18,011 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [869765519] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:18,011 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:18,011 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16, 16] total 22 [2025-01-10 07:10:18,011 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [174731484] [2025-01-10 07:10:18,011 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:18,011 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:18,012 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:18,012 INFO L85 PathProgramCache]: Analyzing trace with hash 29978, now seen corresponding path program 5 times [2025-01-10 07:10:18,013 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:18,013 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [96715826] [2025-01-10 07:10:18,013 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-01-10 07:10:18,013 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:18,015 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:18,017 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:18,017 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-10 07:10:18,017 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:18,017 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:18,018 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:18,018 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:18,018 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:18,018 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:18,020 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:18,133 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:18,133 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2025-01-10 07:10:18,134 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=384, Unknown=0, NotChecked=0, Total=462 [2025-01-10 07:10:18,134 INFO L87 Difference]: Start difference. First operand 422 states and 569 transitions. cyclomatic complexity: 180 Second operand has 22 states, 15 states have (on average 1.6) internal successors, (24), 18 states have internal predecessors, (24), 7 states have call successors, (10), 6 states have call predecessors, (10), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-01-10 07:10:18,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:18,335 INFO L93 Difference]: Finished difference Result 558 states and 752 transitions. [2025-01-10 07:10:18,335 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 558 states and 752 transitions. [2025-01-10 07:10:18,340 INFO L131 ngComponentsAnalysis]: Automaton has 24 accepting balls. 143 [2025-01-10 07:10:18,345 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 558 states to 554 states and 748 transitions. [2025-01-10 07:10:18,345 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 343 [2025-01-10 07:10:18,346 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 351 [2025-01-10 07:10:18,346 INFO L73 IsDeterministic]: Start isDeterministic. Operand 554 states and 748 transitions. [2025-01-10 07:10:18,346 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:18,347 INFO L218 hiAutomatonCegarLoop]: Abstraction has 554 states and 748 transitions. [2025-01-10 07:10:18,347 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 554 states and 748 transitions. [2025-01-10 07:10:18,356 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 554 to 459. [2025-01-10 07:10:18,356 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 459 states, 377 states have (on average 1.3023872679045092) internal successors, (491), 378 states have internal predecessors, (491), 51 states have call successors, (57), 38 states have call predecessors, (57), 31 states have return successors, (65), 42 states have call predecessors, (65), 46 states have call successors, (65) [2025-01-10 07:10:18,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 459 states to 459 states and 613 transitions. [2025-01-10 07:10:18,360 INFO L240 hiAutomatonCegarLoop]: Abstraction has 459 states and 613 transitions. [2025-01-10 07:10:18,360 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2025-01-10 07:10:18,360 INFO L432 stractBuchiCegarLoop]: Abstraction has 459 states and 613 transitions. [2025-01-10 07:10:18,360 INFO L338 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2025-01-10 07:10:18,360 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 459 states and 613 transitions. [2025-01-10 07:10:18,362 INFO L131 ngComponentsAnalysis]: Automaton has 18 accepting balls. 104 [2025-01-10 07:10:18,362 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:18,362 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:18,363 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:18,363 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2025-01-10 07:10:18,363 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< [2025-01-10 07:10:18,363 INFO L754 eck$LassoCheckResult]: Loop: "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< [2025-01-10 07:10:18,363 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:18,363 INFO L85 PathProgramCache]: Analyzing trace with hash 2138868044, now seen corresponding path program 5 times [2025-01-10 07:10:18,363 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:18,363 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1569551705] [2025-01-10 07:10:18,367 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-01-10 07:10:18,367 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:18,372 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 25 statements into 4 equivalence classes. [2025-01-10 07:10:18,388 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) and asserted 25 of 25 statements. [2025-01-10 07:10:18,391 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2025-01-10 07:10:18,392 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:18,392 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:18,394 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-01-10 07:10:18,405 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-01-10 07:10:18,406 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:18,406 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:18,409 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:18,409 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:18,409 INFO L85 PathProgramCache]: Analyzing trace with hash 29978, now seen corresponding path program 6 times [2025-01-10 07:10:18,409 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:18,409 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1596183739] [2025-01-10 07:10:18,409 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-01-10 07:10:18,409 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:18,412 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:18,415 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:18,416 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2025-01-10 07:10:18,416 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:18,416 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:18,416 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 3 statements into 1 equivalence classes. [2025-01-10 07:10:18,417 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 3 of 3 statements. [2025-01-10 07:10:18,417 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:18,417 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:18,419 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:18,420 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:18,420 INFO L85 PathProgramCache]: Analyzing trace with hash -1116904465, now seen corresponding path program 6 times [2025-01-10 07:10:18,420 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:18,420 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [814966111] [2025-01-10 07:10:18,420 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-01-10 07:10:18,420 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:18,425 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 28 statements into 4 equivalence classes. [2025-01-10 07:10:18,435 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) and asserted 28 of 28 statements. [2025-01-10 07:10:18,435 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2025-01-10 07:10:18,435 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:18,594 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 19 proven. 3 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2025-01-10 07:10:18,595 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:18,595 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [814966111] [2025-01-10 07:10:18,595 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [814966111] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:18,595 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [541575252] [2025-01-10 07:10:18,595 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-01-10 07:10:18,595 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:18,595 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:18,597 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-01-10 07:10:18,599 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-01-10 07:10:18,641 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 28 statements into 4 equivalence classes. [2025-01-10 07:10:18,664 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) and asserted 28 of 28 statements. [2025-01-10 07:10:18,664 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2025-01-10 07:10:18,664 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:18,665 INFO L256 TraceCheckSpWp]: Trace formula consists of 217 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-01-10 07:10:18,666 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:18,726 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 19 proven. 3 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2025-01-10 07:10:18,726 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:18,831 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 19 proven. 3 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2025-01-10 07:10:18,831 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [541575252] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:18,831 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:18,831 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 18 [2025-01-10 07:10:18,831 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1191751570] [2025-01-10 07:10:18,832 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:18,944 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:18,945 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2025-01-10 07:10:18,945 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2025-01-10 07:10:18,945 INFO L87 Difference]: Start difference. First operand 459 states and 613 transitions. cyclomatic complexity: 189 Second operand has 18 states, 10 states have (on average 2.3) internal successors, (23), 13 states have internal predecessors, (23), 9 states have call successors, (10), 5 states have call predecessors, (10), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-01-10 07:10:19,147 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:19,147 INFO L93 Difference]: Finished difference Result 415 states and 545 transitions. [2025-01-10 07:10:19,148 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 415 states and 545 transitions. [2025-01-10 07:10:19,150 INFO L131 ngComponentsAnalysis]: Automaton has 20 accepting balls. 111 [2025-01-10 07:10:19,153 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 415 states to 401 states and 531 transitions. [2025-01-10 07:10:19,153 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 311 [2025-01-10 07:10:19,154 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 314 [2025-01-10 07:10:19,154 INFO L73 IsDeterministic]: Start isDeterministic. Operand 401 states and 531 transitions. [2025-01-10 07:10:19,154 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:19,154 INFO L218 hiAutomatonCegarLoop]: Abstraction has 401 states and 531 transitions. [2025-01-10 07:10:19,154 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 401 states and 531 transitions. [2025-01-10 07:10:19,161 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 401 to 374. [2025-01-10 07:10:19,162 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 374 states, 307 states have (on average 1.286644951140065) internal successors, (395), 310 states have internal predecessors, (395), 38 states have call successors, (41), 33 states have call predecessors, (41), 29 states have return successors, (58), 30 states have call predecessors, (58), 33 states have call successors, (58) [2025-01-10 07:10:19,167 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 374 states to 374 states and 494 transitions. [2025-01-10 07:10:19,167 INFO L240 hiAutomatonCegarLoop]: Abstraction has 374 states and 494 transitions. [2025-01-10 07:10:19,167 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2025-01-10 07:10:19,167 INFO L432 stractBuchiCegarLoop]: Abstraction has 374 states and 494 transitions. [2025-01-10 07:10:19,168 INFO L338 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2025-01-10 07:10:19,168 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 374 states and 494 transitions. [2025-01-10 07:10:19,169 INFO L131 ngComponentsAnalysis]: Automaton has 17 accepting balls. 97 [2025-01-10 07:10:19,170 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:19,170 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:19,171 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:19,171 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2025-01-10 07:10:19,171 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume merge_~i~0#1 == merge_~m#1;merge_#t~post4#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post4#1;call merge_#t~mem5#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post4#1, 4);merge_#t~ite13#1 := merge_#t~mem5#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" [2025-01-10 07:10:19,172 INFO L754 eck$LassoCheckResult]: Loop: "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" [2025-01-10 07:10:19,172 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:19,172 INFO L85 PathProgramCache]: Analyzing trace with hash 1436441687, now seen corresponding path program 1 times [2025-01-10 07:10:19,172 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:19,172 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2128565574] [2025-01-10 07:10:19,172 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:19,172 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:19,177 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 26 statements into 1 equivalence classes. [2025-01-10 07:10:19,187 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 26 of 26 statements. [2025-01-10 07:10:19,188 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:19,188 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:19,261 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2025-01-10 07:10:19,261 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:19,261 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2128565574] [2025-01-10 07:10:19,261 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2128565574] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-10 07:10:19,261 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-10 07:10:19,261 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-01-10 07:10:19,262 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [888270355] [2025-01-10 07:10:19,262 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-10 07:10:19,262 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:19,262 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:19,262 INFO L85 PathProgramCache]: Analyzing trace with hash 69, now seen corresponding path program 2 times [2025-01-10 07:10:19,263 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:19,263 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [24364804] [2025-01-10 07:10:19,263 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:19,263 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:19,265 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:19,268 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:19,268 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-10 07:10:19,268 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:19,268 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:19,269 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:19,269 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:19,271 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:19,271 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:19,273 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:19,361 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:19,362 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-01-10 07:10:19,362 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-01-10 07:10:19,362 INFO L87 Difference]: Start difference. First operand 374 states and 494 transitions. cyclomatic complexity: 145 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, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2025-01-10 07:10:19,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:19,401 INFO L93 Difference]: Finished difference Result 452 states and 598 transitions. [2025-01-10 07:10:19,401 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 452 states and 598 transitions. [2025-01-10 07:10:19,404 INFO L131 ngComponentsAnalysis]: Automaton has 17 accepting balls. 132 [2025-01-10 07:10:19,411 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 452 states to 452 states and 598 transitions. [2025-01-10 07:10:19,411 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 329 [2025-01-10 07:10:19,411 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 329 [2025-01-10 07:10:19,415 INFO L73 IsDeterministic]: Start isDeterministic. Operand 452 states and 598 transitions. [2025-01-10 07:10:19,416 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:19,416 INFO L218 hiAutomatonCegarLoop]: Abstraction has 452 states and 598 transitions. [2025-01-10 07:10:19,416 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 452 states and 598 transitions. [2025-01-10 07:10:19,424 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 452 to 452. [2025-01-10 07:10:19,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 452 states, 385 states have (on average 1.2961038961038962) internal successors, (499), 388 states have internal predecessors, (499), 38 states have call successors, (41), 33 states have call predecessors, (41), 29 states have return successors, (58), 30 states have call predecessors, (58), 33 states have call successors, (58) [2025-01-10 07:10:19,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 452 states to 452 states and 598 transitions. [2025-01-10 07:10:19,436 INFO L240 hiAutomatonCegarLoop]: Abstraction has 452 states and 598 transitions. [2025-01-10 07:10:19,437 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-01-10 07:10:19,437 INFO L432 stractBuchiCegarLoop]: Abstraction has 452 states and 598 transitions. [2025-01-10 07:10:19,437 INFO L338 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2025-01-10 07:10:19,437 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 452 states and 598 transitions. [2025-01-10 07:10:19,439 INFO L131 ngComponentsAnalysis]: Automaton has 17 accepting balls. 132 [2025-01-10 07:10:19,444 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:19,444 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:19,445 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:19,445 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2025-01-10 07:10:19,445 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" [2025-01-10 07:10:19,445 INFO L754 eck$LassoCheckResult]: Loop: "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" [2025-01-10 07:10:19,447 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:19,447 INFO L85 PathProgramCache]: Analyzing trace with hash 1787554385, now seen corresponding path program 1 times [2025-01-10 07:10:19,447 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:19,447 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [899539862] [2025-01-10 07:10:19,447 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:19,447 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:19,452 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 28 statements into 1 equivalence classes. [2025-01-10 07:10:19,463 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 28 of 28 statements. [2025-01-10 07:10:19,466 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:19,467 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:19,551 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2025-01-10 07:10:19,551 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:19,551 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [899539862] [2025-01-10 07:10:19,551 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [899539862] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:19,551 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1886590398] [2025-01-10 07:10:19,551 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:19,551 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:19,552 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:19,553 INFO L229 MonitoredProcess]: Starting monitored process 64 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:10:19,555 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (64)] Waiting until timeout for monitored process [2025-01-10 07:10:19,596 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 28 statements into 1 equivalence classes. [2025-01-10 07:10:19,612 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 28 of 28 statements. [2025-01-10 07:10:19,612 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:19,612 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:19,612 INFO L256 TraceCheckSpWp]: Trace formula consists of 190 conjuncts, 6 conjuncts are in the unsatisfiable core [2025-01-10 07:10:19,617 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:19,662 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2025-01-10 07:10:19,662 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:19,698 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2025-01-10 07:10:19,698 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1886590398] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:19,698 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:19,698 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 7 [2025-01-10 07:10:19,698 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1825095935] [2025-01-10 07:10:19,698 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:19,698 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:19,698 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:19,699 INFO L85 PathProgramCache]: Analyzing trace with hash 69, now seen corresponding path program 3 times [2025-01-10 07:10:19,699 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:19,699 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [83818045] [2025-01-10 07:10:19,699 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:10:19,699 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:19,704 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:19,704 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:19,705 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-01-10 07:10:19,705 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:19,705 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:19,705 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:19,706 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:19,706 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:19,706 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:19,707 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:19,792 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:19,793 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2025-01-10 07:10:19,793 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2025-01-10 07:10:19,793 INFO L87 Difference]: Start difference. First operand 452 states and 598 transitions. cyclomatic complexity: 171 Second operand has 8 states, 7 states have (on average 5.0) internal successors, (35), 8 states have internal predecessors, (35), 2 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2025-01-10 07:10:19,835 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:19,836 INFO L93 Difference]: Finished difference Result 751 states and 949 transitions. [2025-01-10 07:10:19,836 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 751 states and 949 transitions. [2025-01-10 07:10:19,840 INFO L131 ngComponentsAnalysis]: Automaton has 17 accepting balls. 132 [2025-01-10 07:10:19,843 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 751 states to 751 states and 949 transitions. [2025-01-10 07:10:19,843 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 490 [2025-01-10 07:10:19,843 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 490 [2025-01-10 07:10:19,843 INFO L73 IsDeterministic]: Start isDeterministic. Operand 751 states and 949 transitions. [2025-01-10 07:10:19,844 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:19,844 INFO L218 hiAutomatonCegarLoop]: Abstraction has 751 states and 949 transitions. [2025-01-10 07:10:19,844 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 751 states and 949 transitions. [2025-01-10 07:10:19,851 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 751 to 582. [2025-01-10 07:10:19,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 582 states, 515 states have (on average 1.2466019417475729) internal successors, (642), 518 states have internal predecessors, (642), 38 states have call successors, (41), 33 states have call predecessors, (41), 29 states have return successors, (58), 30 states have call predecessors, (58), 33 states have call successors, (58) [2025-01-10 07:10:19,853 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 582 states to 582 states and 741 transitions. [2025-01-10 07:10:19,853 INFO L240 hiAutomatonCegarLoop]: Abstraction has 582 states and 741 transitions. [2025-01-10 07:10:19,855 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-01-10 07:10:19,855 INFO L432 stractBuchiCegarLoop]: Abstraction has 582 states and 741 transitions. [2025-01-10 07:10:19,855 INFO L338 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2025-01-10 07:10:19,855 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 582 states and 741 transitions. [2025-01-10 07:10:19,858 INFO L131 ngComponentsAnalysis]: Automaton has 17 accepting balls. 132 [2025-01-10 07:10:19,858 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:19,858 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:19,858 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:19,858 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2025-01-10 07:10:19,858 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" [2025-01-10 07:10:19,858 INFO L754 eck$LassoCheckResult]: Loop: "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" [2025-01-10 07:10:19,858 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:19,858 INFO L85 PathProgramCache]: Analyzing trace with hash -267490282, now seen corresponding path program 1 times [2025-01-10 07:10:19,858 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:19,858 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [142706544] [2025-01-10 07:10:19,858 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:19,859 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:19,868 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 31 statements into 1 equivalence classes. [2025-01-10 07:10:19,875 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 31 of 31 statements. [2025-01-10 07:10:19,875 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:19,875 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:19,875 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:19,877 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 31 statements into 1 equivalence classes. [2025-01-10 07:10:19,882 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 31 of 31 statements. [2025-01-10 07:10:19,882 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:19,882 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:19,885 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:19,885 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:19,885 INFO L85 PathProgramCache]: Analyzing trace with hash 69, now seen corresponding path program 4 times [2025-01-10 07:10:19,885 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:19,885 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2091863269] [2025-01-10 07:10:19,885 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:10:19,885 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:19,886 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 1 statements into 2 equivalence classes. [2025-01-10 07:10:19,887 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:19,887 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-01-10 07:10:19,887 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:19,887 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:19,888 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:19,888 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:19,888 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:19,888 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:19,889 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:19,889 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:19,889 INFO L85 PathProgramCache]: Analyzing trace with hash 297735888, now seen corresponding path program 1 times [2025-01-10 07:10:19,889 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:19,889 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [7240037] [2025-01-10 07:10:19,889 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:19,889 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:19,893 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 32 statements into 1 equivalence classes. [2025-01-10 07:10:19,899 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 32 of 32 statements. [2025-01-10 07:10:19,899 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:19,899 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:19,899 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:19,901 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 32 statements into 1 equivalence classes. [2025-01-10 07:10:19,907 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 32 of 32 statements. [2025-01-10 07:10:19,907 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:19,907 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:19,909 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:21,758 INFO L204 LassoAnalysis]: Preferences: [2025-01-10 07:10:21,758 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-01-10 07:10:21,758 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-01-10 07:10:21,758 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-01-10 07:10:21,758 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-01-10 07:10:21,758 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:21,758 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-01-10 07:10:21,758 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-01-10 07:10:21,758 INFO L132 ssoRankerPreferences]: Filename of dumped script: mergeSort.i_Iteration15_Lasso [2025-01-10 07:10:21,758 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-01-10 07:10:21,759 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-01-10 07:10:21,762 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,764 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,765 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,767 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,768 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,770 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,771 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,773 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,774 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,775 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,776 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,778 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,779 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,780 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,782 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,783 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,784 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,785 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,787 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,788 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:21,790 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,219 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,220 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,222 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,223 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,224 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,226 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,227 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,228 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,230 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,231 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,232 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:22,911 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-01-10 07:10:22,911 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-01-10 07:10:22,911 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:22,912 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:22,914 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-01-10 07:10:22,915 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-01-10 07:10:22,917 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-01-10 07:10:22,927 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:22,928 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:22,928 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:22,928 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:22,928 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:22,928 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:22,928 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:22,929 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:22,935 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-01-10 07:10:22,935 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:22,935 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:22,937 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-01-10 07:10:22,940 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-01-10 07:10:22,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-01-10 07:10:22,951 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:22,952 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:22,952 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:22,952 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:22,952 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:22,952 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:22,952 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:22,953 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:22,959 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-01-10 07:10:22,959 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:22,960 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:22,962 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-01-10 07:10:22,963 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-01-10 07:10:22,964 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-01-10 07:10:22,974 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:22,974 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:22,974 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:22,974 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:22,974 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:22,974 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:22,974 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:22,975 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:22,981 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:22,981 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:22,982 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:22,984 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-01-10 07:10:22,985 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-01-10 07:10:22,987 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-01-10 07:10:22,997 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:22,997 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:22,997 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:22,997 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:22,997 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:22,997 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:22,997 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:22,998 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,004 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:23,004 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,004 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,006 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-01-10 07:10:23,008 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-01-10 07:10:23,008 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-01-10 07:10:23,017 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,018 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,018 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,018 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,018 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,018 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,018 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,019 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,024 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-01-10 07:10:23,024 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,024 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,026 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-01-10 07:10:23,027 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-01-10 07:10:23,028 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-01-10 07:10:23,038 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,038 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,038 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,038 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,038 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,038 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,038 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,039 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,045 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Ended with exit code 0 [2025-01-10 07:10:23,045 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,045 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,047 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-01-10 07:10:23,048 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-01-10 07:10:23,050 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-01-10 07:10:23,059 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,059 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,059 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,059 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,059 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,060 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,060 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,061 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,066 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-01-10 07:10:23,066 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,066 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,068 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-01-10 07:10:23,069 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-01-10 07:10:23,070 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-01-10 07:10:23,080 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,080 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,080 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,080 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,080 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,080 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,080 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,081 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,087 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-01-10 07:10:23,088 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,088 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,090 INFO L229 MonitoredProcess]: Starting monitored process 73 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-01-10 07:10:23,091 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Waiting until timeout for monitored process [2025-01-10 07:10:23,092 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-01-10 07:10:23,101 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,101 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,101 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,101 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,101 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,102 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,102 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,103 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,109 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:23,109 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,109 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,111 INFO L229 MonitoredProcess]: Starting monitored process 74 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-01-10 07:10:23,112 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Waiting until timeout for monitored process [2025-01-10 07:10:23,113 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-01-10 07:10:23,123 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,123 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,123 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,123 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,123 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,123 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,123 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,124 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,129 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:23,130 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,130 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,131 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-01-10 07:10:23,132 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-01-10 07:10:23,134 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-01-10 07:10:23,143 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,143 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,144 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,144 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,144 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,144 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,144 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,145 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,150 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Ended with exit code 0 [2025-01-10 07:10:23,150 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,150 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,152 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-01-10 07:10:23,165 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-01-10 07:10:23,165 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-01-10 07:10:23,174 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,175 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,175 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,175 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,175 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,175 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,175 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,176 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,181 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-01-10 07:10:23,182 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,182 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,184 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-01-10 07:10:23,185 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-01-10 07:10:23,185 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-01-10 07:10:23,195 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,196 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,196 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,196 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,196 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,196 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,196 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,197 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,203 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Ended with exit code 0 [2025-01-10 07:10:23,203 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,203 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,206 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-01-10 07:10:23,207 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-01-10 07:10:23,207 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-01-10 07:10:23,217 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,217 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,217 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,217 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,217 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,218 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,218 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,219 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,224 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-01-10 07:10:23,225 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,225 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,227 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-01-10 07:10:23,228 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-01-10 07:10:23,228 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-01-10 07:10:23,238 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,238 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,238 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,238 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,238 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,239 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,239 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,240 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,245 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:23,245 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,246 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,247 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-01-10 07:10:23,248 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-01-10 07:10:23,249 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-01-10 07:10:23,259 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,259 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,259 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,259 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,259 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,260 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,260 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,261 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,266 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:23,267 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,267 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,268 INFO L229 MonitoredProcess]: Starting monitored process 81 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-01-10 07:10:23,270 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Waiting until timeout for monitored process [2025-01-10 07:10:23,271 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-01-10 07:10:23,281 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,281 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,281 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,281 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,281 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,282 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,282 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,284 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,289 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Ended with exit code 0 [2025-01-10 07:10:23,290 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,290 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,292 INFO L229 MonitoredProcess]: Starting monitored process 82 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-01-10 07:10:23,292 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Waiting until timeout for monitored process [2025-01-10 07:10:23,294 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-01-10 07:10:23,303 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,303 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,303 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,304 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,304 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,304 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,304 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,305 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,310 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:23,310 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,310 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,312 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-01-10 07:10:23,313 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-01-10 07:10:23,314 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-01-10 07:10:23,324 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,324 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,324 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,324 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,324 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,324 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,324 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,325 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,330 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-01-10 07:10:23,330 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,331 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,332 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-01-10 07:10:23,333 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-01-10 07:10:23,334 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-01-10 07:10:23,343 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,344 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,344 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,344 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,344 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,344 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,344 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,345 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,351 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Ended with exit code 0 [2025-01-10 07:10:23,351 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,351 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,353 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-01-10 07:10:23,354 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-01-10 07:10:23,356 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-01-10 07:10:23,365 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,365 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:23,365 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,365 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,365 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,366 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:23,366 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:23,367 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:23,376 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:23,376 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,376 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,379 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-01-10 07:10:23,380 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-01-10 07:10:23,381 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-01-10 07:10:23,391 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:23,391 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:23,391 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:23,391 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:23,399 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:23,399 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:23,415 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-01-10 07:10:23,459 INFO L443 ModelExtractionUtils]: Simplification made 24 calls to the SMT solver. [2025-01-10 07:10:23,459 INFO L444 ModelExtractionUtils]: 5 out of 43 variables were initially zero. Simplification set additionally 34 variables to zero. [2025-01-10 07:10:23,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:23,459 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,461 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-01-10 07:10:23,462 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-01-10 07:10:23,463 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-01-10 07:10:23,474 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2025-01-10 07:10:23,474 INFO L474 LassoAnalysis]: Proved termination. [2025-01-10 07:10:23,474 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(merge_sort_merge_~i~0#1, v_rep(select #length merge_sort_merge_~a#1.base)_2, merge_sort_merge_~a#1.offset) = -4*merge_sort_merge_~i~0#1 + 2*v_rep(select #length merge_sort_merge_~a#1.base)_2 - 1*merge_sort_merge_~a#1.offset Supporting invariants [] [2025-01-10 07:10:23,484 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-01-10 07:10:23,534 INFO L156 tatePredicateManager]: 12 out of 12 supporting invariants were superfluous and have been removed [2025-01-10 07:10:23,536 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: ~a!offset [2025-01-10 07:10:23,536 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2025-01-10 07:10:23,536 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2025-01-10 07:10:23,554 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:23,584 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 31 statements into 1 equivalence classes. [2025-01-10 07:10:23,626 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 31 of 31 statements. [2025-01-10 07:10:23,626 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:23,626 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:23,628 INFO L256 TraceCheckSpWp]: Trace formula consists of 305 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-01-10 07:10:23,628 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:23,735 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:23,737 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:23,737 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:23,737 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:23,737 INFO L256 TraceCheckSpWp]: Trace formula consists of 17 conjuncts, 5 conjuncts are in the unsatisfiable core [2025-01-10 07:10:23,738 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:23,738 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:23,738 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 1 loop predicates [2025-01-10 07:10:23,738 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 582 states and 741 transitions. cyclomatic complexity: 184 Second operand has 3 states, 3 states have (on average 7.0) internal successors, (21), 3 states have internal predecessors, (21), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2025-01-10 07:10:23,772 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 582 states and 741 transitions. cyclomatic complexity: 184. Second operand has 3 states, 3 states have (on average 7.0) internal successors, (21), 3 states have internal predecessors, (21), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Result 627 states and 804 transitions. Complement of second has 6 states. [2025-01-10 07:10:23,773 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 3 states 2 stem states 0 non-accepting loop states 1 accepting loop states [2025-01-10 07:10:23,774 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 7.0) internal successors, (21), 3 states have internal predecessors, (21), 1 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2025-01-10 07:10:23,774 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 27 transitions. [2025-01-10 07:10:23,774 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 27 transitions. Stem has 31 letters. Loop has 1 letters. [2025-01-10 07:10:23,774 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:23,775 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 27 transitions. Stem has 32 letters. Loop has 1 letters. [2025-01-10 07:10:23,775 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:23,775 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 27 transitions. Stem has 31 letters. Loop has 2 letters. [2025-01-10 07:10:23,775 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:23,776 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 627 states and 804 transitions. [2025-01-10 07:10:23,780 INFO L131 ngComponentsAnalysis]: Automaton has 15 accepting balls. 130 [2025-01-10 07:10:23,784 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 627 states to 538 states and 693 transitions. [2025-01-10 07:10:23,784 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 373 [2025-01-10 07:10:23,785 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 378 [2025-01-10 07:10:23,785 INFO L73 IsDeterministic]: Start isDeterministic. Operand 538 states and 693 transitions. [2025-01-10 07:10:23,786 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:23,786 INFO L218 hiAutomatonCegarLoop]: Abstraction has 538 states and 693 transitions. [2025-01-10 07:10:23,786 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 538 states and 693 transitions. [2025-01-10 07:10:23,794 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 538 to 535. [2025-01-10 07:10:23,795 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 535 states, 476 states have (on average 1.2647058823529411) internal successors, (602), 479 states have internal predecessors, (602), 35 states have call successors, (35), 27 states have call predecessors, (35), 24 states have return successors, (53), 28 states have call predecessors, (53), 31 states have call successors, (53) [2025-01-10 07:10:23,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 535 states to 535 states and 690 transitions. [2025-01-10 07:10:23,797 INFO L240 hiAutomatonCegarLoop]: Abstraction has 535 states and 690 transitions. [2025-01-10 07:10:23,797 INFO L432 stractBuchiCegarLoop]: Abstraction has 535 states and 690 transitions. [2025-01-10 07:10:23,797 INFO L338 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2025-01-10 07:10:23,797 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 535 states and 690 transitions. [2025-01-10 07:10:23,800 INFO L131 ngComponentsAnalysis]: Automaton has 15 accepting balls. 130 [2025-01-10 07:10:23,800 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:23,800 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:23,802 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:23,802 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:23,802 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" [2025-01-10 07:10:23,802 INFO L754 eck$LassoCheckResult]: Loop: "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" [2025-01-10 07:10:23,803 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:23,803 INFO L85 PathProgramCache]: Analyzing trace with hash 1440247272, now seen corresponding path program 1 times [2025-01-10 07:10:23,803 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:23,803 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1619528171] [2025-01-10 07:10:23,803 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:23,803 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:23,814 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 53 statements into 1 equivalence classes. [2025-01-10 07:10:23,824 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 53 of 53 statements. [2025-01-10 07:10:23,824 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:23,824 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:23,892 INFO L134 CoverageAnalysis]: Checked inductivity of 61 backedges. 21 proven. 4 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2025-01-10 07:10:23,892 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:23,892 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1619528171] [2025-01-10 07:10:23,892 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1619528171] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:23,892 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [951564386] [2025-01-10 07:10:23,892 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:23,892 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:23,892 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:23,897 INFO L229 MonitoredProcess]: Starting monitored process 88 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:10:23,898 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (88)] Waiting until timeout for monitored process [2025-01-10 07:10:23,971 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 53 statements into 1 equivalence classes. [2025-01-10 07:10:23,999 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 53 of 53 statements. [2025-01-10 07:10:23,999 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:23,999 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:24,000 INFO L256 TraceCheckSpWp]: Trace formula consists of 354 conjuncts, 15 conjuncts are in the unsatisfiable core [2025-01-10 07:10:24,002 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:24,144 INFO L134 CoverageAnalysis]: Checked inductivity of 61 backedges. 24 proven. 21 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2025-01-10 07:10:24,144 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:24,389 INFO L134 CoverageAnalysis]: Checked inductivity of 61 backedges. 24 proven. 22 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2025-01-10 07:10:24,389 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [951564386] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:24,389 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:24,389 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 14, 15] total 27 [2025-01-10 07:10:24,389 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2083815201] [2025-01-10 07:10:24,390 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:24,390 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:24,390 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:24,390 INFO L85 PathProgramCache]: Analyzing trace with hash -612759297, now seen corresponding path program 1 times [2025-01-10 07:10:24,390 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:24,390 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [959238731] [2025-01-10 07:10:24,390 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:24,390 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:24,393 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:24,394 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:24,394 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:24,394 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:24,394 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:24,399 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:24,400 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:24,400 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:24,400 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:24,402 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:24,538 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:24,539 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2025-01-10 07:10:24,539 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=88, Invalid=614, Unknown=0, NotChecked=0, Total=702 [2025-01-10 07:10:24,539 INFO L87 Difference]: Start difference. First operand 535 states and 690 transitions. cyclomatic complexity: 182 Second operand has 27 states, 25 states have (on average 3.08) internal successors, (77), 23 states have internal predecessors, (77), 9 states have call successors, (13), 3 states have call predecessors, (13), 4 states have return successors, (11), 6 states have call predecessors, (11), 7 states have call successors, (11) [2025-01-10 07:10:25,041 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (87)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:25,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:25,132 INFO L93 Difference]: Finished difference Result 871 states and 1137 transitions. [2025-01-10 07:10:25,132 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 871 states and 1137 transitions. [2025-01-10 07:10:25,139 INFO L131 ngComponentsAnalysis]: Automaton has 34 accepting balls. 265 [2025-01-10 07:10:25,142 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 871 states to 865 states and 1131 transitions. [2025-01-10 07:10:25,142 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 580 [2025-01-10 07:10:25,143 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 580 [2025-01-10 07:10:25,143 INFO L73 IsDeterministic]: Start isDeterministic. Operand 865 states and 1131 transitions. [2025-01-10 07:10:25,143 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:25,143 INFO L218 hiAutomatonCegarLoop]: Abstraction has 865 states and 1131 transitions. [2025-01-10 07:10:25,143 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 865 states and 1131 transitions. [2025-01-10 07:10:25,152 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 865 to 456. [2025-01-10 07:10:25,153 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 456 states, 405 states have (on average 1.254320987654321) internal successors, (508), 409 states have internal predecessors, (508), 31 states have call successors, (31), 22 states have call predecessors, (31), 20 states have return successors, (52), 24 states have call predecessors, (52), 27 states have call successors, (52) [2025-01-10 07:10:25,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 456 states to 456 states and 591 transitions. [2025-01-10 07:10:25,154 INFO L240 hiAutomatonCegarLoop]: Abstraction has 456 states and 591 transitions. [2025-01-10 07:10:25,155 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2025-01-10 07:10:25,155 INFO L432 stractBuchiCegarLoop]: Abstraction has 456 states and 591 transitions. [2025-01-10 07:10:25,155 INFO L338 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2025-01-10 07:10:25,155 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 456 states and 591 transitions. [2025-01-10 07:10:25,157 INFO L131 ngComponentsAnalysis]: Automaton has 13 accepting balls. 112 [2025-01-10 07:10:25,157 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:25,157 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:25,157 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:25,158 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:25,158 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" [2025-01-10 07:10:25,158 INFO L754 eck$LassoCheckResult]: Loop: "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" [2025-01-10 07:10:25,158 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:25,159 INFO L85 PathProgramCache]: Analyzing trace with hash -178719768, now seen corresponding path program 1 times [2025-01-10 07:10:25,159 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:25,159 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [23325746] [2025-01-10 07:10:25,159 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:25,159 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:25,166 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 55 statements into 1 equivalence classes. [2025-01-10 07:10:25,183 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 55 of 55 statements. [2025-01-10 07:10:25,183 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:25,183 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:25,183 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:25,186 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 55 statements into 1 equivalence classes. [2025-01-10 07:10:25,198 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 55 of 55 statements. [2025-01-10 07:10:25,199 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:25,199 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:25,203 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:25,203 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:25,203 INFO L85 PathProgramCache]: Analyzing trace with hash -612759297, now seen corresponding path program 2 times [2025-01-10 07:10:25,203 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:25,203 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1148545268] [2025-01-10 07:10:25,203 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:25,203 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:25,205 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:25,206 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:25,206 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-10 07:10:25,206 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:25,206 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:25,207 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:25,208 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:25,208 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:25,208 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:25,209 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:25,209 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:25,209 INFO L85 PathProgramCache]: Analyzing trace with hash 753480504, now seen corresponding path program 2 times [2025-01-10 07:10:25,209 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:25,209 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [394109768] [2025-01-10 07:10:25,209 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:25,209 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:25,216 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 62 statements into 2 equivalence classes. [2025-01-10 07:10:25,240 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 62 of 62 statements. [2025-01-10 07:10:25,241 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:10:25,241 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:25,241 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:25,244 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 62 statements into 1 equivalence classes. [2025-01-10 07:10:25,264 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 62 of 62 statements. [2025-01-10 07:10:25,264 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:25,264 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:25,274 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:34,233 INFO L204 LassoAnalysis]: Preferences: [2025-01-10 07:10:34,234 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-01-10 07:10:34,234 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-01-10 07:10:34,234 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-01-10 07:10:34,234 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-01-10 07:10:34,234 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:34,234 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-01-10 07:10:34,234 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-01-10 07:10:34,234 INFO L132 ssoRankerPreferences]: Filename of dumped script: mergeSort.i_Iteration17_Lasso [2025-01-10 07:10:34,234 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-01-10 07:10:34,234 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-01-10 07:10:34,236 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,237 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,239 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,240 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,242 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,243 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,244 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,245 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,247 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,248 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,250 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:34,251 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,112 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,114 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,115 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,117 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,118 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,119 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,120 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,124 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,125 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,126 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,128 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,129 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,130 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,132 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,133 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,135 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,136 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,137 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,139 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,140 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:35,800 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-01-10 07:10:35,800 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-01-10 07:10:35,800 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:35,800 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:35,803 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-01-10 07:10:35,803 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-01-10 07:10:35,805 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-01-10 07:10:35,815 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:35,815 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:35,815 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:35,815 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:35,815 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:35,816 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:35,816 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:35,817 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:35,823 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (89)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:35,823 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:35,823 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:35,825 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-01-10 07:10:35,826 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-01-10 07:10:35,827 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-01-10 07:10:35,837 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:35,837 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:35,837 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:35,837 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:35,837 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:35,838 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:35,838 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:35,840 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:35,845 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (90)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:35,845 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:35,845 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:35,847 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-01-10 07:10:35,848 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-01-10 07:10:35,849 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-01-10 07:10:35,859 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:35,859 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:35,859 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:35,859 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:35,859 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:35,859 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:35,859 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:35,860 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:35,865 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (91)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:35,866 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:35,866 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:35,867 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-01-10 07:10:35,868 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-01-10 07:10:35,869 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-01-10 07:10:35,879 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:35,879 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:35,879 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:35,879 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:35,879 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:35,879 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:35,879 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:35,880 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:35,885 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (92)] Ended with exit code 0 [2025-01-10 07:10:35,886 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:35,886 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:35,888 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-01-10 07:10:35,889 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-01-10 07:10:35,890 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-01-10 07:10:35,899 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:35,899 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:35,899 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:35,899 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:35,899 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:35,900 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:35,900 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:35,901 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:35,906 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-01-10 07:10:35,907 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:35,907 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:35,908 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-01-10 07:10:35,910 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-01-10 07:10:35,911 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-01-10 07:10:35,920 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:35,920 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:35,920 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:35,920 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:35,920 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:35,921 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:35,921 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:35,922 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:35,928 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-01-10 07:10:35,928 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:35,928 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:35,930 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-01-10 07:10:35,930 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-01-10 07:10:35,932 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-01-10 07:10:35,941 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:35,941 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:35,941 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:35,941 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:35,941 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:35,941 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:35,942 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:35,943 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:35,948 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (95)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:35,948 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:35,948 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:35,950 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-01-10 07:10:35,951 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-01-10 07:10:35,951 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-01-10 07:10:35,966 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:35,966 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:35,966 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:35,966 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:35,966 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:35,966 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:35,966 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:35,967 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:35,973 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (96)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:35,973 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:35,973 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:35,975 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-01-10 07:10:35,976 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-01-10 07:10:35,977 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-01-10 07:10:35,987 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:35,987 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:35,987 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:35,987 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:35,987 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:35,987 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:35,987 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:35,989 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:35,994 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (97)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:35,994 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:35,994 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:35,996 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-01-10 07:10:35,997 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-01-10 07:10:35,998 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-01-10 07:10:36,007 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,008 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:36,008 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,008 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,008 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,008 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:36,008 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:36,009 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,014 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (98)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,015 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,015 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,016 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-01-10 07:10:36,018 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-01-10 07:10:36,019 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-01-10 07:10:36,028 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,028 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:36,028 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,028 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,029 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,029 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:36,029 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:36,030 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,035 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (99)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,035 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,035 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,037 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-01-10 07:10:36,038 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-01-10 07:10:36,039 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-01-10 07:10:36,049 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,049 INFO L203 nArgumentSynthesizer]: 8 stem disjuncts [2025-01-10 07:10:36,049 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,049 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,055 INFO L401 nArgumentSynthesizer]: We have 20 Motzkin's Theorem applications. [2025-01-10 07:10:36,055 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,065 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,070 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (100)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,071 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,071 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,072 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-01-10 07:10:36,074 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-01-10 07:10:36,075 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-01-10 07:10:36,085 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,085 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:36,085 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,085 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,085 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,086 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:36,086 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:36,087 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,093 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (101)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,093 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,093 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,095 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-01-10 07:10:36,096 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-01-10 07:10:36,097 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-01-10 07:10:36,107 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,107 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:36,107 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,107 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,107 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,107 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:36,107 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:36,108 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,114 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (102)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,114 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,114 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,116 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-01-10 07:10:36,117 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-01-10 07:10:36,118 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-01-10 07:10:36,128 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,128 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,128 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,128 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,134 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:36,134 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,144 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,150 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (103)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,151 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,151 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,153 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-01-10 07:10:36,154 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-01-10 07:10:36,155 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-01-10 07:10:36,164 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,164 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,164 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,164 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,165 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:36,165 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,167 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,174 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (104)] Ended with exit code 0 [2025-01-10 07:10:36,174 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,175 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,176 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-01-10 07:10:36,177 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-01-10 07:10:36,178 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-01-10 07:10:36,188 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,188 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,188 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,188 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,190 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:36,190 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,193 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,199 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-01-10 07:10:36,199 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,199 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,201 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-01-10 07:10:36,202 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-01-10 07:10:36,203 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-01-10 07:10:36,212 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,213 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,213 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,213 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,214 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:36,214 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,218 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,224 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-01-10 07:10:36,224 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,224 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,227 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-01-10 07:10:36,227 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-01-10 07:10:36,229 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-01-10 07:10:36,239 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,239 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,239 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,239 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,241 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:36,241 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,243 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,249 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-01-10 07:10:36,249 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,249 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,251 INFO L229 MonitoredProcess]: Starting monitored process 108 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-01-10 07:10:36,252 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (108)] Waiting until timeout for monitored process [2025-01-10 07:10:36,253 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-01-10 07:10:36,262 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,263 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,263 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,263 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,264 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:36,264 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,266 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,271 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (108)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,271 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,271 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,273 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-01-10 07:10:36,274 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-01-10 07:10:36,275 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-01-10 07:10:36,284 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,285 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,285 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,285 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,286 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:36,286 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,289 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,294 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-01-10 07:10:36,294 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,295 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,296 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-01-10 07:10:36,297 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-01-10 07:10:36,299 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-01-10 07:10:36,308 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,309 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,309 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,309 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,310 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:36,310 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,313 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,319 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (110)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,319 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,319 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,321 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-01-10 07:10:36,322 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-01-10 07:10:36,322 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-01-10 07:10:36,332 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,332 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,332 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,332 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,335 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:36,335 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,340 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,346 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (111)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,346 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,346 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,348 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-01-10 07:10:36,349 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-01-10 07:10:36,350 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-01-10 07:10:36,359 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,359 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:36,359 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,359 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,359 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,360 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:36,360 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:36,361 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,367 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-01-10 07:10:36,367 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,367 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,370 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-01-10 07:10:36,370 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-01-10 07:10:36,371 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-01-10 07:10:36,381 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,381 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:36,381 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,381 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,381 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,381 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:36,381 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:36,382 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,388 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (113)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,388 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,388 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,390 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-01-10 07:10:36,391 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-01-10 07:10:36,392 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-01-10 07:10:36,402 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,402 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,402 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:36,402 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,403 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:36,403 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:36,406 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:36,411 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (114)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:36,412 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:36,412 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:36,413 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-01-10 07:10:36,415 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-01-10 07:10:36,415 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-01-10 07:10:36,425 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:36,425 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:36,425 INFO L204 nArgumentSynthesizer]: 4 loop disjuncts [2025-01-10 07:10:36,425 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:36,470 INFO L401 nArgumentSynthesizer]: We have 48 Motzkin's Theorem applications. [2025-01-10 07:10:36,470 INFO L402 nArgumentSynthesizer]: A total of 8 supporting invariants were added. [2025-01-10 07:10:36,655 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-01-10 07:10:37,480 INFO L443 ModelExtractionUtils]: Simplification made 59 calls to the SMT solver. [2025-01-10 07:10:37,480 INFO L444 ModelExtractionUtils]: 15 out of 100 variables were initially zero. Simplification set additionally 81 variables to zero. [2025-01-10 07:10:37,480 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:37,481 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:37,483 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-01-10 07:10:37,484 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-01-10 07:10:37,484 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-01-10 07:10:37,498 INFO L438 nArgumentSynthesizer]: Removed 8 redundant supporting invariants from a total of 8. [2025-01-10 07:10:37,498 INFO L474 LassoAnalysis]: Proved termination. [2025-01-10 07:10:37,498 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(merge_sort_merge_~k~0#1, v_rep(select #length merge_sort_merge_~x~0#1.base)_3, merge_sort_merge_~x~0#1.offset) = -4*merge_sort_merge_~k~0#1 + 1*v_rep(select #length merge_sort_merge_~x~0#1.base)_3 - 1*merge_sort_merge_~x~0#1.offset Supporting invariants [] [2025-01-10 07:10:37,510 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (115)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:37,576 INFO L156 tatePredicateManager]: 22 out of 22 supporting invariants were superfluous and have been removed [2025-01-10 07:10:37,578 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: ~x~0!offset [2025-01-10 07:10:37,578 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2025-01-10 07:10:37,578 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2025-01-10 07:10:37,585 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:37,622 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 55 statements into 1 equivalence classes. [2025-01-10 07:10:37,674 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 55 of 55 statements. [2025-01-10 07:10:37,675 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:37,675 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:37,677 INFO L256 TraceCheckSpWp]: Trace formula consists of 534 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-01-10 07:10:37,678 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:37,858 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (116)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:37,925 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:37,929 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:37,929 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:37,929 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:37,930 INFO L256 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-01-10 07:10:37,930 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:37,954 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:37,954 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 2 loop predicates [2025-01-10 07:10:37,955 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 456 states and 591 transitions. cyclomatic complexity: 158 Second operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:37,991 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 456 states and 591 transitions. cyclomatic complexity: 158. Second operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 544 states and 703 transitions. Complement of second has 7 states. [2025-01-10 07:10:37,991 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 2 stem states 1 non-accepting loop states 1 accepting loop states [2025-01-10 07:10:37,992 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:37,992 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 27 transitions. [2025-01-10 07:10:37,992 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 27 transitions. Stem has 55 letters. Loop has 7 letters. [2025-01-10 07:10:37,992 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:37,992 INFO L689 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2025-01-10 07:10:38,001 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:38,023 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 55 statements into 1 equivalence classes. [2025-01-10 07:10:38,062 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 55 of 55 statements. [2025-01-10 07:10:38,062 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:38,062 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:38,064 INFO L256 TraceCheckSpWp]: Trace formula consists of 534 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-01-10 07:10:38,066 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:38,260 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:38,264 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:38,264 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:38,264 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:38,264 INFO L256 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-01-10 07:10:38,264 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:38,290 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:38,291 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 2 loop predicates [2025-01-10 07:10:38,291 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 456 states and 591 transitions. cyclomatic complexity: 158 Second operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:38,335 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 456 states and 591 transitions. cyclomatic complexity: 158. Second operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 552 states and 703 transitions. Complement of second has 9 states. [2025-01-10 07:10:38,336 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 2 stem states 2 non-accepting loop states 1 accepting loop states [2025-01-10 07:10:38,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:38,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 26 transitions. [2025-01-10 07:10:38,337 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 26 transitions. Stem has 55 letters. Loop has 7 letters. [2025-01-10 07:10:38,337 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:38,337 INFO L689 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2025-01-10 07:10:38,345 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:38,368 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 55 statements into 1 equivalence classes. [2025-01-10 07:10:38,414 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 55 of 55 statements. [2025-01-10 07:10:38,414 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:38,414 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:38,416 INFO L256 TraceCheckSpWp]: Trace formula consists of 534 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-01-10 07:10:38,418 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:38,591 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 7 statements into 1 equivalence classes. [2025-01-10 07:10:38,595 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 7 of 7 statements. [2025-01-10 07:10:38,595 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:38,595 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:38,595 INFO L256 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-01-10 07:10:38,596 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:38,618 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:38,619 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 2 loop predicates [2025-01-10 07:10:38,619 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 456 states and 591 transitions. cyclomatic complexity: 158 Second operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:38,656 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 456 states and 591 transitions. cyclomatic complexity: 158. Second operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 677 states and 872 transitions. Complement of second has 13 states. [2025-01-10 07:10:38,657 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 2 stem states 1 non-accepting loop states 1 accepting loop states [2025-01-10 07:10:38,657 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 8.0) internal successors, (40), 5 states have internal predecessors, (40), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:38,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 42 transitions. [2025-01-10 07:10:38,657 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 42 transitions. Stem has 55 letters. Loop has 7 letters. [2025-01-10 07:10:38,658 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:38,658 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 42 transitions. Stem has 62 letters. Loop has 7 letters. [2025-01-10 07:10:38,658 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:38,658 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 42 transitions. Stem has 55 letters. Loop has 14 letters. [2025-01-10 07:10:38,658 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:38,658 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 677 states and 872 transitions. [2025-01-10 07:10:38,665 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 10 [2025-01-10 07:10:38,667 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 677 states to 457 states and 592 transitions. [2025-01-10 07:10:38,667 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 157 [2025-01-10 07:10:38,667 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 163 [2025-01-10 07:10:38,667 INFO L73 IsDeterministic]: Start isDeterministic. Operand 457 states and 592 transitions. [2025-01-10 07:10:38,667 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:38,667 INFO L218 hiAutomatonCegarLoop]: Abstraction has 457 states and 592 transitions. [2025-01-10 07:10:38,668 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 457 states and 592 transitions. [2025-01-10 07:10:38,676 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 457 to 456. [2025-01-10 07:10:38,681 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 456 states, 405 states have (on average 1.254320987654321) internal successors, (508), 409 states have internal predecessors, (508), 31 states have call successors, (31), 22 states have call predecessors, (31), 20 states have return successors, (52), 24 states have call predecessors, (52), 27 states have call successors, (52) [2025-01-10 07:10:38,682 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 456 states to 456 states and 591 transitions. [2025-01-10 07:10:38,686 INFO L240 hiAutomatonCegarLoop]: Abstraction has 456 states and 591 transitions. [2025-01-10 07:10:38,686 INFO L432 stractBuchiCegarLoop]: Abstraction has 456 states and 591 transitions. [2025-01-10 07:10:38,686 INFO L338 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2025-01-10 07:10:38,687 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 456 states and 591 transitions. [2025-01-10 07:10:38,688 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 10 [2025-01-10 07:10:38,688 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:38,688 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:38,688 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:38,688 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2025-01-10 07:10:38,689 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" [2025-01-10 07:10:38,689 INFO L754 eck$LassoCheckResult]: Loop: "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" [2025-01-10 07:10:38,689 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:38,689 INFO L85 PathProgramCache]: Analyzing trace with hash 1518853032, now seen corresponding path program 3 times [2025-01-10 07:10:38,689 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:38,689 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [749022963] [2025-01-10 07:10:38,689 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:10:38,689 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:38,706 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 58 statements into 5 equivalence classes. [2025-01-10 07:10:38,728 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) and asserted 43 of 58 statements. [2025-01-10 07:10:38,729 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2025-01-10 07:10:38,729 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:38,962 INFO L134 CoverageAnalysis]: Checked inductivity of 75 backedges. 26 proven. 17 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2025-01-10 07:10:38,963 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:38,963 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [749022963] [2025-01-10 07:10:38,963 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [749022963] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:38,963 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1952042312] [2025-01-10 07:10:38,963 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:10:38,963 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:38,963 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:38,965 INFO L229 MonitoredProcess]: Starting monitored process 117 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:10:38,970 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (117)] Waiting until timeout for monitored process [2025-01-10 07:10:39,095 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 58 statements into 5 equivalence classes. [2025-01-10 07:10:39,307 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) and asserted 43 of 58 statements. [2025-01-10 07:10:39,307 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2025-01-10 07:10:39,307 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:39,309 INFO L256 TraceCheckSpWp]: Trace formula consists of 325 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-01-10 07:10:39,310 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:39,397 INFO L134 CoverageAnalysis]: Checked inductivity of 75 backedges. 25 proven. 18 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2025-01-10 07:10:39,397 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:39,472 INFO L134 CoverageAnalysis]: Checked inductivity of 75 backedges. 25 proven. 18 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2025-01-10 07:10:39,472 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1952042312] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:39,472 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:39,472 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 20 [2025-01-10 07:10:39,472 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1071431173] [2025-01-10 07:10:39,472 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:39,473 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:39,473 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:39,473 INFO L85 PathProgramCache]: Analyzing trace with hash 69, now seen corresponding path program 5 times [2025-01-10 07:10:39,473 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:39,473 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1296790866] [2025-01-10 07:10:39,473 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-01-10 07:10:39,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:39,476 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:39,477 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:39,477 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-10 07:10:39,478 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:39,478 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:39,478 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:39,479 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:39,479 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:39,479 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:39,480 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:39,538 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:39,538 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2025-01-10 07:10:39,538 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=319, Unknown=0, NotChecked=0, Total=380 [2025-01-10 07:10:39,538 INFO L87 Difference]: Start difference. First operand 456 states and 591 transitions. cyclomatic complexity: 158 Second operand has 20 states, 20 states have (on average 3.35) internal successors, (67), 19 states have internal predecessors, (67), 4 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2025-01-10 07:10:39,849 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:39,849 INFO L93 Difference]: Finished difference Result 538 states and 690 transitions. [2025-01-10 07:10:39,849 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 538 states and 690 transitions. [2025-01-10 07:10:39,851 INFO L131 ngComponentsAnalysis]: Automaton has 9 accepting balls. 12 [2025-01-10 07:10:39,853 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 538 states to 538 states and 690 transitions. [2025-01-10 07:10:39,853 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 164 [2025-01-10 07:10:39,854 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 164 [2025-01-10 07:10:39,854 INFO L73 IsDeterministic]: Start isDeterministic. Operand 538 states and 690 transitions. [2025-01-10 07:10:39,855 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:39,855 INFO L218 hiAutomatonCegarLoop]: Abstraction has 538 states and 690 transitions. [2025-01-10 07:10:39,855 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 538 states and 690 transitions. [2025-01-10 07:10:39,860 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 538 to 490. [2025-01-10 07:10:39,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 490 states, 439 states have (on average 1.2505694760820045) internal successors, (549), 443 states have internal predecessors, (549), 31 states have call successors, (31), 22 states have call predecessors, (31), 20 states have return successors, (52), 24 states have call predecessors, (52), 27 states have call successors, (52) [2025-01-10 07:10:39,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 490 states to 490 states and 632 transitions. [2025-01-10 07:10:39,862 INFO L240 hiAutomatonCegarLoop]: Abstraction has 490 states and 632 transitions. [2025-01-10 07:10:39,866 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2025-01-10 07:10:39,866 INFO L432 stractBuchiCegarLoop]: Abstraction has 490 states and 632 transitions. [2025-01-10 07:10:39,866 INFO L338 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2025-01-10 07:10:39,866 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 490 states and 632 transitions. [2025-01-10 07:10:39,867 INFO L131 ngComponentsAnalysis]: Automaton has 7 accepting balls. 10 [2025-01-10 07:10:39,868 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:39,868 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:39,869 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 5, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:39,869 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1] [2025-01-10 07:10:39,869 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" [2025-01-10 07:10:39,869 INFO L754 eck$LassoCheckResult]: Loop: "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" [2025-01-10 07:10:39,869 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:39,869 INFO L85 PathProgramCache]: Analyzing trace with hash 1438620248, now seen corresponding path program 4 times [2025-01-10 07:10:39,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:39,870 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [790288501] [2025-01-10 07:10:39,870 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:10:39,870 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:39,878 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 65 statements into 2 equivalence classes. [2025-01-10 07:10:39,903 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 65 of 65 statements. [2025-01-10 07:10:39,904 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-01-10 07:10:39,904 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:39,904 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:39,907 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 65 statements into 1 equivalence classes. [2025-01-10 07:10:39,920 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 65 of 65 statements. [2025-01-10 07:10:39,921 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:39,921 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:39,926 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:39,926 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:39,926 INFO L85 PathProgramCache]: Analyzing trace with hash 69, now seen corresponding path program 6 times [2025-01-10 07:10:39,927 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:39,927 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1128710766] [2025-01-10 07:10:39,927 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-01-10 07:10:39,927 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:39,929 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:39,930 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:39,930 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2025-01-10 07:10:39,930 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:39,930 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:39,930 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:39,931 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:39,931 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:39,931 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:39,932 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:39,932 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:39,933 INFO L85 PathProgramCache]: Analyzing trace with hash 1647554766, now seen corresponding path program 5 times [2025-01-10 07:10:39,933 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:39,933 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2068198286] [2025-01-10 07:10:39,933 INFO L95 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2025-01-10 07:10:39,933 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:39,943 INFO L108 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 partitioned 66 statements into 5 equivalence classes. [2025-01-10 07:10:39,966 INFO L111 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) and asserted 66 of 66 statements. [2025-01-10 07:10:39,966 INFO L114 AnnotateAndAsserter]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2025-01-10 07:10:39,966 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:39,966 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:10:39,970 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 66 statements into 1 equivalence classes. [2025-01-10 07:10:39,985 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 66 of 66 statements. [2025-01-10 07:10:39,985 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:39,985 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:10:39,992 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:10:51,483 INFO L204 LassoAnalysis]: Preferences: [2025-01-10 07:10:51,483 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-01-10 07:10:51,484 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-01-10 07:10:51,484 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-01-10 07:10:51,484 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-01-10 07:10:51,484 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:51,484 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-01-10 07:10:51,484 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-01-10 07:10:51,484 INFO L132 ssoRankerPreferences]: Filename of dumped script: mergeSort.i_Iteration19_Lasso [2025-01-10 07:10:51,484 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-01-10 07:10:51,484 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2025-01-10 07:10:51,486 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,491 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,493 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,494 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,496 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,499 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,501 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,503 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,505 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,510 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,511 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:51,512 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,857 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,859 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,860 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,862 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,863 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,864 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,865 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,867 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,868 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,869 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,870 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,872 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,873 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,875 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,876 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,877 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,878 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,879 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,881 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:52,882 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-01-10 07:10:53,496 INFO L259 LassoAnalysis]: Preprocessing complete. [2025-01-10 07:10:53,496 INFO L451 LassoAnalysis]: Using template 'affine'. [2025-01-10 07:10:53,496 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,497 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,501 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-01-10 07:10:53,502 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-01-10 07:10:53,504 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-01-10 07:10:53,515 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,515 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,515 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,515 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,515 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,515 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,516 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,517 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,522 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (118)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:53,523 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,523 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,525 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-01-10 07:10:53,525 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-01-10 07:10:53,527 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-01-10 07:10:53,537 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,537 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,537 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,537 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,537 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,537 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,537 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,538 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,544 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (119)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:53,544 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,544 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,546 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-01-10 07:10:53,548 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-01-10 07:10:53,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-01-10 07:10:53,558 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,558 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,558 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,558 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,558 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,559 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,559 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,560 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,565 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (120)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:53,566 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,566 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,568 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-01-10 07:10:53,569 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-01-10 07:10:53,569 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-01-10 07:10:53,579 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,580 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,580 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,580 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,580 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,580 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,580 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,581 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,587 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (121)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:53,587 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,587 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,589 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-01-10 07:10:53,590 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-01-10 07:10:53,592 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-01-10 07:10:53,602 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,602 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,602 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,602 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,602 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,602 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,602 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,603 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,610 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (122)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:53,610 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,610 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,613 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-01-10 07:10:53,613 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-01-10 07:10:53,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-01-10 07:10:53,625 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,625 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,625 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,625 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,625 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,626 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,626 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,627 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,632 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-01-10 07:10:53,633 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,633 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,635 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-01-10 07:10:53,636 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-01-10 07:10:53,637 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-01-10 07:10:53,648 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,648 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,649 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,649 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,649 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,649 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,649 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,650 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,656 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-01-10 07:10:53,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,658 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-01-10 07:10:53,659 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-01-10 07:10:53,661 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-01-10 07:10:53,671 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,671 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,671 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,671 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,671 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,672 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,672 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,673 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,678 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (125)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:53,679 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,679 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,681 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-01-10 07:10:53,681 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-01-10 07:10:53,682 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-01-10 07:10:53,692 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,692 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,692 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,692 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,692 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,692 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,692 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,697 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,710 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (126)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:53,710 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,710 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,712 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-01-10 07:10:53,713 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-01-10 07:10:53,714 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-01-10 07:10:53,723 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,724 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,724 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,724 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,724 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,724 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,724 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,725 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,730 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-01-10 07:10:53,730 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,731 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,733 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-01-10 07:10:53,736 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-01-10 07:10:53,737 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-01-10 07:10:53,747 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,747 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,747 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,747 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,747 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,747 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,747 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,748 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,753 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (128)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:53,753 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,753 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,755 INFO L229 MonitoredProcess]: Starting monitored process 129 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-01-10 07:10:53,756 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (129)] Waiting until timeout for monitored process [2025-01-10 07:10:53,758 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-01-10 07:10:53,768 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,768 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,768 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,768 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,770 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:53,770 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:53,773 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,779 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (129)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:53,779 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,779 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,780 INFO L229 MonitoredProcess]: Starting monitored process 130 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-01-10 07:10:53,782 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (130)] Waiting until timeout for monitored process [2025-01-10 07:10:53,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-01-10 07:10:53,791 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,792 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,792 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,792 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,792 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:53,792 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:53,794 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,800 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (130)] Ended with exit code 0 [2025-01-10 07:10:53,800 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,800 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,802 INFO L229 MonitoredProcess]: Starting monitored process 131 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-01-10 07:10:53,802 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (131)] Waiting until timeout for monitored process [2025-01-10 07:10:53,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-01-10 07:10:53,813 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,813 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-01-10 07:10:53,813 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,813 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,813 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,813 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-01-10 07:10:53,813 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-01-10 07:10:53,814 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-01-10 07:10:53,820 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (131)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:53,820 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,820 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,822 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-01-10 07:10:53,823 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-01-10 07:10:53,824 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-01-10 07:10:53,833 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-01-10 07:10:53,834 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-01-10 07:10:53,834 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-01-10 07:10:53,834 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-01-10 07:10:53,838 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-01-10 07:10:53,839 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-01-10 07:10:53,849 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-01-10 07:10:53,875 INFO L443 ModelExtractionUtils]: Simplification made 15 calls to the SMT solver. [2025-01-10 07:10:53,876 INFO L444 ModelExtractionUtils]: 0 out of 34 variables were initially zero. Simplification set additionally 30 variables to zero. [2025-01-10 07:10:53,876 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-10 07:10:53,877 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:53,879 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-01-10 07:10:53,880 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-01-10 07:10:53,880 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-01-10 07:10:53,891 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2025-01-10 07:10:53,891 INFO L474 LassoAnalysis]: Proved termination. [2025-01-10 07:10:53,891 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(merge_sort_merge_~x~0#1.offset, merge_sort_merge_~i~0#1, v_rep(select #length merge_sort_merge_~x~0#1.base)_4) = -1*merge_sort_merge_~x~0#1.offset - 4*merge_sort_merge_~i~0#1 + 1*v_rep(select #length merge_sort_merge_~x~0#1.base)_4 Supporting invariants [] [2025-01-10 07:10:53,897 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (132)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:54,016 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (133)] Forceful destruction successful, exit code 0 [2025-01-10 07:10:54,023 INFO L156 tatePredicateManager]: 35 out of 35 supporting invariants were superfluous and have been removed [2025-01-10 07:10:54,024 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: ~x~0!offset [2025-01-10 07:10:54,024 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2025-01-10 07:10:54,024 WARN L970 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2025-01-10 07:10:54,031 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:54,061 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 65 statements into 1 equivalence classes. [2025-01-10 07:10:54,097 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 65 of 65 statements. [2025-01-10 07:10:54,097 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:54,097 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:54,099 INFO L256 TraceCheckSpWp]: Trace formula consists of 601 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-01-10 07:10:54,100 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:54,284 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:54,286 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:54,286 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:54,286 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:54,286 INFO L256 TraceCheckSpWp]: Trace formula consists of 17 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-01-10 07:10:54,286 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:54,286 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:54,287 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 1 loop predicates [2025-01-10 07:10:54,287 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 490 states and 632 transitions. cyclomatic complexity: 166 Second operand has 3 states, 3 states have (on average 11.666666666666666) internal successors, (35), 3 states have internal predecessors, (35), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:54,315 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 490 states and 632 transitions. cyclomatic complexity: 166. Second operand has 3 states, 3 states have (on average 11.666666666666666) internal successors, (35), 3 states have internal predecessors, (35), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 491 states and 633 transitions. Complement of second has 5 states. [2025-01-10 07:10:54,316 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 3 states 2 stem states 0 non-accepting loop states 1 accepting loop states [2025-01-10 07:10:54,316 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 11.666666666666666) internal successors, (35), 3 states have internal predecessors, (35), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:54,316 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 27 transitions. [2025-01-10 07:10:54,317 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 27 transitions. Stem has 65 letters. Loop has 1 letters. [2025-01-10 07:10:54,317 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:54,317 INFO L689 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2025-01-10 07:10:54,325 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:54,357 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 65 statements into 1 equivalence classes. [2025-01-10 07:10:54,401 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 65 of 65 statements. [2025-01-10 07:10:54,402 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:54,402 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:54,404 INFO L256 TraceCheckSpWp]: Trace formula consists of 601 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-01-10 07:10:54,405 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:54,578 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:54,580 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:54,580 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:54,580 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:54,581 INFO L256 TraceCheckSpWp]: Trace formula consists of 17 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-01-10 07:10:54,581 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:54,581 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:54,581 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.2 stem predicates 1 loop predicates [2025-01-10 07:10:54,582 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 490 states and 632 transitions. cyclomatic complexity: 166 Second operand has 3 states, 3 states have (on average 11.666666666666666) internal successors, (35), 3 states have internal predecessors, (35), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:54,607 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 490 states and 632 transitions. cyclomatic complexity: 166. Second operand has 3 states, 3 states have (on average 11.666666666666666) internal successors, (35), 3 states have internal predecessors, (35), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 491 states and 633 transitions. Complement of second has 5 states. [2025-01-10 07:10:54,608 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 3 states 2 stem states 0 non-accepting loop states 1 accepting loop states [2025-01-10 07:10:54,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 11.666666666666666) internal successors, (35), 3 states have internal predecessors, (35), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:54,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 27 transitions. [2025-01-10 07:10:54,608 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 27 transitions. Stem has 65 letters. Loop has 1 letters. [2025-01-10 07:10:54,608 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:54,608 INFO L689 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2025-01-10 07:10:54,617 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:54,642 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 65 statements into 1 equivalence classes. [2025-01-10 07:10:54,687 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 65 of 65 statements. [2025-01-10 07:10:54,687 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:54,687 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:54,689 INFO L256 TraceCheckSpWp]: Trace formula consists of 601 conjuncts, 12 conjuncts are in the unsatisfiable core [2025-01-10 07:10:54,691 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:54,865 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 1 statements into 1 equivalence classes. [2025-01-10 07:10:54,867 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 1 of 1 statements. [2025-01-10 07:10:54,867 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:54,867 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:54,867 INFO L256 TraceCheckSpWp]: Trace formula consists of 17 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-01-10 07:10:54,867 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:54,868 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-10 07:10:54,868 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 1 loop predicates [2025-01-10 07:10:54,868 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 490 states and 632 transitions. cyclomatic complexity: 166 Second operand has 3 states, 3 states have (on average 11.666666666666666) internal successors, (35), 3 states have internal predecessors, (35), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:54,893 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 490 states and 632 transitions. cyclomatic complexity: 166. Second operand has 3 states, 3 states have (on average 11.666666666666666) internal successors, (35), 3 states have internal predecessors, (35), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Result 491 states and 633 transitions. Complement of second has 5 states. [2025-01-10 07:10:54,893 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 3 states 2 stem states 0 non-accepting loop states 1 accepting loop states [2025-01-10 07:10:54,893 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 11.666666666666666) internal successors, (35), 3 states have internal predecessors, (35), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2025-01-10 07:10:54,894 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 31 transitions. [2025-01-10 07:10:54,894 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 31 transitions. Stem has 65 letters. Loop has 1 letters. [2025-01-10 07:10:54,894 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:54,894 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 31 transitions. Stem has 66 letters. Loop has 1 letters. [2025-01-10 07:10:54,894 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:54,894 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 31 transitions. Stem has 65 letters. Loop has 2 letters. [2025-01-10 07:10:54,894 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2025-01-10 07:10:54,894 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 491 states and 633 transitions. [2025-01-10 07:10:54,896 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2025-01-10 07:10:54,897 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 491 states to 227 states and 297 transitions. [2025-01-10 07:10:54,897 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 66 [2025-01-10 07:10:54,898 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 70 [2025-01-10 07:10:54,898 INFO L73 IsDeterministic]: Start isDeterministic. Operand 227 states and 297 transitions. [2025-01-10 07:10:54,899 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:54,899 INFO L218 hiAutomatonCegarLoop]: Abstraction has 227 states and 297 transitions. [2025-01-10 07:10:54,899 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 227 states and 297 transitions. [2025-01-10 07:10:54,901 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 227 to 198. [2025-01-10 07:10:54,901 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 198 states, 174 states have (on average 1.2471264367816093) internal successors, (217), 175 states have internal predecessors, (217), 16 states have call successors, (16), 10 states have call predecessors, (16), 8 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) [2025-01-10 07:10:54,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 198 states to 198 states and 259 transitions. [2025-01-10 07:10:54,902 INFO L240 hiAutomatonCegarLoop]: Abstraction has 198 states and 259 transitions. [2025-01-10 07:10:54,902 INFO L432 stractBuchiCegarLoop]: Abstraction has 198 states and 259 transitions. [2025-01-10 07:10:54,902 INFO L338 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2025-01-10 07:10:54,902 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 198 states and 259 transitions. [2025-01-10 07:10:54,903 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2025-01-10 07:10:54,903 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:54,903 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:54,903 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 5, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1] [2025-01-10 07:10:54,903 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 5, 4, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2] [2025-01-10 07:10:54,904 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" [2025-01-10 07:10:54,904 INFO L754 eck$LassoCheckResult]: Loop: "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" [2025-01-10 07:10:54,904 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:54,904 INFO L85 PathProgramCache]: Analyzing trace with hash -2015451602, now seen corresponding path program 6 times [2025-01-10 07:10:54,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:54,904 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2076029243] [2025-01-10 07:10:54,904 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-01-10 07:10:54,904 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:54,913 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 71 statements into 7 equivalence classes. [2025-01-10 07:10:54,921 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) and asserted 43 of 71 statements. [2025-01-10 07:10:54,921 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2025-01-10 07:10:54,921 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:54,990 INFO L134 CoverageAnalysis]: Checked inductivity of 129 backedges. 37 proven. 3 refuted. 0 times theorem prover too weak. 89 trivial. 0 not checked. [2025-01-10 07:10:54,990 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:54,990 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2076029243] [2025-01-10 07:10:54,990 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2076029243] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:54,990 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [587165451] [2025-01-10 07:10:54,990 INFO L95 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2025-01-10 07:10:54,990 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:54,990 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:54,995 INFO L229 MonitoredProcess]: Starting monitored process 134 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:10:54,996 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (134)] Waiting until timeout for monitored process [2025-01-10 07:10:55,082 INFO L108 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE partitioned 71 statements into 7 equivalence classes. [2025-01-10 07:10:55,108 INFO L111 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) and asserted 43 of 71 statements. [2025-01-10 07:10:55,108 INFO L114 AnnotateAndAsserter]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2025-01-10 07:10:55,108 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:55,110 INFO L256 TraceCheckSpWp]: Trace formula consists of 309 conjuncts, 6 conjuncts are in the unsatisfiable core [2025-01-10 07:10:55,111 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:55,145 INFO L134 CoverageAnalysis]: Checked inductivity of 129 backedges. 37 proven. 3 refuted. 0 times theorem prover too weak. 89 trivial. 0 not checked. [2025-01-10 07:10:55,145 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:55,198 INFO L134 CoverageAnalysis]: Checked inductivity of 129 backedges. 37 proven. 3 refuted. 0 times theorem prover too weak. 89 trivial. 0 not checked. [2025-01-10 07:10:55,198 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [587165451] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:55,198 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:55,198 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 9 [2025-01-10 07:10:55,199 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1540626092] [2025-01-10 07:10:55,199 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:55,199 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:55,199 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:55,199 INFO L85 PathProgramCache]: Analyzing trace with hash -162527729, now seen corresponding path program 1 times [2025-01-10 07:10:55,199 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:55,199 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [759866791] [2025-01-10 07:10:55,199 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:55,199 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:55,208 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 58 statements into 1 equivalence classes. [2025-01-10 07:10:55,217 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 58 of 58 statements. [2025-01-10 07:10:55,217 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:55,217 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:55,369 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 44 proven. 4 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2025-01-10 07:10:55,369 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:55,369 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [759866791] [2025-01-10 07:10:55,369 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [759866791] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:55,369 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1630397580] [2025-01-10 07:10:55,369 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:55,369 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:55,370 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:55,376 INFO L229 MonitoredProcess]: Starting monitored process 135 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:10:55,376 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (135)] Waiting until timeout for monitored process [2025-01-10 07:10:55,460 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 58 statements into 1 equivalence classes. [2025-01-10 07:10:55,489 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 58 of 58 statements. [2025-01-10 07:10:55,490 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:55,490 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:55,491 INFO L256 TraceCheckSpWp]: Trace formula consists of 388 conjuncts, 6 conjuncts are in the unsatisfiable core [2025-01-10 07:10:55,492 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:55,528 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 42 proven. 1 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2025-01-10 07:10:55,528 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:55,590 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 42 proven. 1 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2025-01-10 07:10:55,590 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1630397580] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:55,590 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:55,590 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 6, 6] total 12 [2025-01-10 07:10:55,591 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [701749962] [2025-01-10 07:10:55,591 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:55,591 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:10:55,591 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:55,591 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2025-01-10 07:10:55,592 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=97, Unknown=0, NotChecked=0, Total=132 [2025-01-10 07:10:55,592 INFO L87 Difference]: Start difference. First operand 198 states and 259 transitions. cyclomatic complexity: 72 Second operand has 12 states, 12 states have (on average 3.9166666666666665) internal successors, (47), 12 states have internal predecessors, (47), 3 states have call successors, (6), 1 states have call predecessors, (6), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2025-01-10 07:10:55,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:55,688 INFO L93 Difference]: Finished difference Result 354 states and 479 transitions. [2025-01-10 07:10:55,688 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 354 states and 479 transitions. [2025-01-10 07:10:55,691 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2025-01-10 07:10:55,693 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 354 states to 354 states and 479 transitions. [2025-01-10 07:10:55,693 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 77 [2025-01-10 07:10:55,693 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 77 [2025-01-10 07:10:55,693 INFO L73 IsDeterministic]: Start isDeterministic. Operand 354 states and 479 transitions. [2025-01-10 07:10:55,694 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:55,694 INFO L218 hiAutomatonCegarLoop]: Abstraction has 354 states and 479 transitions. [2025-01-10 07:10:55,695 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 354 states and 479 transitions. [2025-01-10 07:10:55,697 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 354 to 202. [2025-01-10 07:10:55,697 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 202 states, 178 states have (on average 1.2415730337078652) internal successors, (221), 179 states have internal predecessors, (221), 16 states have call successors, (16), 10 states have call predecessors, (16), 8 states have return successors, (26), 12 states have call predecessors, (26), 12 states have call successors, (26) [2025-01-10 07:10:55,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 202 states to 202 states and 263 transitions. [2025-01-10 07:10:55,698 INFO L240 hiAutomatonCegarLoop]: Abstraction has 202 states and 263 transitions. [2025-01-10 07:10:55,698 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2025-01-10 07:10:55,699 INFO L432 stractBuchiCegarLoop]: Abstraction has 202 states and 263 transitions. [2025-01-10 07:10:55,699 INFO L338 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2025-01-10 07:10:55,699 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 202 states and 263 transitions. [2025-01-10 07:10:55,699 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2025-01-10 07:10:55,699 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:55,699 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:55,700 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 5, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1] [2025-01-10 07:10:55,700 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 9, 8, 8, 8, 5, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4] [2025-01-10 07:10:55,700 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" [2025-01-10 07:10:55,701 INFO L754 eck$LassoCheckResult]: Loop: "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" [2025-01-10 07:10:55,701 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:55,701 INFO L85 PathProgramCache]: Analyzing trace with hash -1431105112, now seen corresponding path program 7 times [2025-01-10 07:10:55,701 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:55,701 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [863040739] [2025-01-10 07:10:55,701 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-01-10 07:10:55,701 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:55,712 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 73 statements into 1 equivalence classes. [2025-01-10 07:10:55,723 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 73 of 73 statements. [2025-01-10 07:10:55,723 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:55,723 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:55,906 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 41 proven. 27 refuted. 0 times theorem prover too weak. 70 trivial. 0 not checked. [2025-01-10 07:10:55,906 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:55,906 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [863040739] [2025-01-10 07:10:55,906 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [863040739] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:55,906 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [65753968] [2025-01-10 07:10:55,907 INFO L95 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2025-01-10 07:10:55,907 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:55,907 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:55,912 INFO L229 MonitoredProcess]: Starting monitored process 136 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:10:55,914 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (136)] Waiting until timeout for monitored process [2025-01-10 07:10:56,012 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 73 statements into 1 equivalence classes. [2025-01-10 07:10:56,054 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 73 of 73 statements. [2025-01-10 07:10:56,054 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:56,054 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:56,058 INFO L256 TraceCheckSpWp]: Trace formula consists of 527 conjuncts, 11 conjuncts are in the unsatisfiable core [2025-01-10 07:10:56,059 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:56,109 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 40 proven. 21 refuted. 0 times theorem prover too weak. 77 trivial. 0 not checked. [2025-01-10 07:10:56,109 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:56,219 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 40 proven. 21 refuted. 0 times theorem prover too weak. 77 trivial. 0 not checked. [2025-01-10 07:10:56,219 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [65753968] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:56,219 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:56,219 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2025-01-10 07:10:56,219 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [910776411] [2025-01-10 07:10:56,219 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:56,220 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:56,220 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:56,220 INFO L85 PathProgramCache]: Analyzing trace with hash -1360997677, now seen corresponding path program 2 times [2025-01-10 07:10:56,220 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:56,220 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1877011761] [2025-01-10 07:10:56,220 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:56,220 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:56,236 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 112 statements into 2 equivalence classes. [2025-01-10 07:10:56,283 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 112 of 112 statements. [2025-01-10 07:10:56,284 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:10:56,284 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:56,522 INFO L134 CoverageAnalysis]: Checked inductivity of 406 backedges. 193 proven. 33 refuted. 0 times theorem prover too weak. 180 trivial. 0 not checked. [2025-01-10 07:10:56,523 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:56,523 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1877011761] [2025-01-10 07:10:56,523 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1877011761] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:56,523 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1603948731] [2025-01-10 07:10:56,523 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:10:56,523 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:56,523 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:56,529 INFO L229 MonitoredProcess]: Starting monitored process 137 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:10:56,530 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (137)] Waiting until timeout for monitored process [2025-01-10 07:10:56,644 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 112 statements into 2 equivalence classes. [2025-01-10 07:10:56,707 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 112 of 112 statements. [2025-01-10 07:10:56,707 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:10:56,707 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:56,710 INFO L256 TraceCheckSpWp]: Trace formula consists of 788 conjuncts, 11 conjuncts are in the unsatisfiable core [2025-01-10 07:10:56,712 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:56,763 INFO L134 CoverageAnalysis]: Checked inductivity of 406 backedges. 223 proven. 21 refuted. 0 times theorem prover too weak. 162 trivial. 0 not checked. [2025-01-10 07:10:56,763 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:56,920 INFO L134 CoverageAnalysis]: Checked inductivity of 406 backedges. 139 proven. 103 refuted. 0 times theorem prover too weak. 164 trivial. 0 not checked. [2025-01-10 07:10:56,920 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1603948731] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:56,920 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:56,920 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 12 [2025-01-10 07:10:56,920 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1274071760] [2025-01-10 07:10:56,920 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:56,920 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:10:56,920 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:56,921 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2025-01-10 07:10:56,921 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2025-01-10 07:10:56,921 INFO L87 Difference]: Start difference. First operand 202 states and 263 transitions. cyclomatic complexity: 72 Second operand has 12 states, 12 states have (on average 4.583333333333333) internal successors, (55), 10 states have internal predecessors, (55), 3 states have call successors, (7), 1 states have call predecessors, (7), 3 states have return successors, (7), 6 states have call predecessors, (7), 3 states have call successors, (7) [2025-01-10 07:10:57,035 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:10:57,036 INFO L93 Difference]: Finished difference Result 275 states and 357 transitions. [2025-01-10 07:10:57,036 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 275 states and 357 transitions. [2025-01-10 07:10:57,038 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2025-01-10 07:10:57,039 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 275 states to 275 states and 357 transitions. [2025-01-10 07:10:57,039 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 76 [2025-01-10 07:10:57,039 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 76 [2025-01-10 07:10:57,039 INFO L73 IsDeterministic]: Start isDeterministic. Operand 275 states and 357 transitions. [2025-01-10 07:10:57,039 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:10:57,039 INFO L218 hiAutomatonCegarLoop]: Abstraction has 275 states and 357 transitions. [2025-01-10 07:10:57,040 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 275 states and 357 transitions. [2025-01-10 07:10:57,043 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 275 to 239. [2025-01-10 07:10:57,043 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 239 states, 215 states have (on average 1.241860465116279) internal successors, (267), 215 states have internal predecessors, (267), 16 states have call successors, (16), 10 states have call predecessors, (16), 8 states have return successors, (26), 13 states have call predecessors, (26), 12 states have call successors, (26) [2025-01-10 07:10:57,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 239 states to 239 states and 309 transitions. [2025-01-10 07:10:57,044 INFO L240 hiAutomatonCegarLoop]: Abstraction has 239 states and 309 transitions. [2025-01-10 07:10:57,044 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2025-01-10 07:10:57,045 INFO L432 stractBuchiCegarLoop]: Abstraction has 239 states and 309 transitions. [2025-01-10 07:10:57,045 INFO L338 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2025-01-10 07:10:57,045 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 239 states and 309 transitions. [2025-01-10 07:10:57,046 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2025-01-10 07:10:57,046 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:10:57,046 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:10:57,047 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 5, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-10 07:10:57,047 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [8, 7, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1] [2025-01-10 07:10:57,047 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume !(merge_#t~mem6#1 < merge_#t~mem7#1);merge_#t~post10#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post10#1;call merge_#t~mem11#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post10#1, 4);merge_#t~ite12#1 := merge_#t~mem11#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume merge_~i~0#1 == merge_~m#1;merge_#t~post4#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post4#1;call merge_#t~mem5#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post4#1, 4);merge_#t~ite13#1 := merge_#t~mem5#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" [2025-01-10 07:10:57,047 INFO L754 eck$LassoCheckResult]: Loop: "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume !(merge_#t~mem6#1 < merge_#t~mem7#1);merge_#t~post10#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post10#1;call merge_#t~mem11#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post10#1, 4);merge_#t~ite12#1 := merge_#t~mem11#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume merge_~i~0#1 == merge_~m#1;merge_#t~post4#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post4#1;call merge_#t~mem5#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post4#1, 4);merge_#t~ite13#1 := merge_#t~mem5#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" [2025-01-10 07:10:57,047 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:57,047 INFO L85 PathProgramCache]: Analyzing trace with hash -1210959213, now seen corresponding path program 1 times [2025-01-10 07:10:57,047 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:57,047 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [701302152] [2025-01-10 07:10:57,048 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:57,048 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:57,058 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 75 statements into 1 equivalence classes. [2025-01-10 07:10:57,070 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 75 of 75 statements. [2025-01-10 07:10:57,070 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:57,070 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:57,582 INFO L134 CoverageAnalysis]: Checked inductivity of 142 backedges. 52 proven. 53 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2025-01-10 07:10:57,583 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:57,583 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [701302152] [2025-01-10 07:10:57,583 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [701302152] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:57,583 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [276824236] [2025-01-10 07:10:57,583 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:57,583 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:57,583 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:57,588 INFO L229 MonitoredProcess]: Starting monitored process 138 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:10:57,596 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (138)] Waiting until timeout for monitored process [2025-01-10 07:10:57,699 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 75 statements into 1 equivalence classes. [2025-01-10 07:10:57,742 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 75 of 75 statements. [2025-01-10 07:10:57,742 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:57,742 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:57,745 INFO L256 TraceCheckSpWp]: Trace formula consists of 530 conjuncts, 23 conjuncts are in the unsatisfiable core [2025-01-10 07:10:57,747 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:58,005 INFO L134 CoverageAnalysis]: Checked inductivity of 142 backedges. 13 proven. 75 refuted. 0 times theorem prover too weak. 54 trivial. 0 not checked. [2025-01-10 07:10:58,005 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:58,633 INFO L134 CoverageAnalysis]: Checked inductivity of 142 backedges. 13 proven. 75 refuted. 0 times theorem prover too weak. 54 trivial. 0 not checked. [2025-01-10 07:10:58,633 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [276824236] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:58,633 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:58,633 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 14, 14] total 43 [2025-01-10 07:10:58,634 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1679955233] [2025-01-10 07:10:58,634 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:58,634 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:10:58,634 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:10:58,635 INFO L85 PathProgramCache]: Analyzing trace with hash 467095501, now seen corresponding path program 1 times [2025-01-10 07:10:58,635 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:10:58,635 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [340437111] [2025-01-10 07:10:58,635 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:58,635 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:10:58,646 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 88 statements into 1 equivalence classes. [2025-01-10 07:10:58,658 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 88 of 88 statements. [2025-01-10 07:10:58,658 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:58,658 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:58,923 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 148 proven. 18 refuted. 0 times theorem prover too weak. 70 trivial. 0 not checked. [2025-01-10 07:10:58,924 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:10:58,924 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [340437111] [2025-01-10 07:10:58,924 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [340437111] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:10:58,924 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [331621601] [2025-01-10 07:10:58,924 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-10 07:10:58,924 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:10:58,924 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:10:58,927 INFO L229 MonitoredProcess]: Starting monitored process 139 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:10:58,935 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (139)] Waiting until timeout for monitored process [2025-01-10 07:10:59,044 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 88 statements into 1 equivalence classes. [2025-01-10 07:10:59,122 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 88 of 88 statements. [2025-01-10 07:10:59,122 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:10:59,122 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:10:59,129 INFO L256 TraceCheckSpWp]: Trace formula consists of 606 conjuncts, 15 conjuncts are in the unsatisfiable core [2025-01-10 07:10:59,131 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:10:59,377 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 122 proven. 33 refuted. 0 times theorem prover too weak. 81 trivial. 0 not checked. [2025-01-10 07:10:59,378 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:10:59,637 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 102 proven. 38 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2025-01-10 07:10:59,638 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [331621601] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:10:59,638 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:10:59,638 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10, 10] total 25 [2025-01-10 07:10:59,638 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2053583961] [2025-01-10 07:10:59,638 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:10:59,638 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:10:59,638 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:10:59,639 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 44 interpolants. [2025-01-10 07:10:59,639 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=154, Invalid=1738, Unknown=0, NotChecked=0, Total=1892 [2025-01-10 07:10:59,639 INFO L87 Difference]: Start difference. First operand 239 states and 309 transitions. cyclomatic complexity: 83 Second operand has 44 states, 39 states have (on average 2.4871794871794872) internal successors, (97), 36 states have internal predecessors, (97), 11 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (11), 8 states have call predecessors, (11), 7 states have call successors, (11) [2025-01-10 07:11:02,213 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:11:02,213 INFO L93 Difference]: Finished difference Result 821 states and 1045 transitions. [2025-01-10 07:11:02,213 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 821 states and 1045 transitions. [2025-01-10 07:11:02,216 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2025-01-10 07:11:02,219 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 821 states to 641 states and 820 transitions. [2025-01-10 07:11:02,220 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 103 [2025-01-10 07:11:02,220 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 103 [2025-01-10 07:11:02,220 INFO L73 IsDeterministic]: Start isDeterministic. Operand 641 states and 820 transitions. [2025-01-10 07:11:02,220 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:11:02,220 INFO L218 hiAutomatonCegarLoop]: Abstraction has 641 states and 820 transitions. [2025-01-10 07:11:02,220 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 641 states and 820 transitions. [2025-01-10 07:11:02,224 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 641 to 319. [2025-01-10 07:11:02,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 319 states, 293 states have (on average 1.2559726962457338) internal successors, (368), 293 states have internal predecessors, (368), 16 states have call successors, (16), 10 states have call predecessors, (16), 10 states have return successors, (27), 15 states have call predecessors, (27), 14 states have call successors, (27) [2025-01-10 07:11:02,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 319 states to 319 states and 411 transitions. [2025-01-10 07:11:02,226 INFO L240 hiAutomatonCegarLoop]: Abstraction has 319 states and 411 transitions. [2025-01-10 07:11:02,226 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 89 states. [2025-01-10 07:11:02,226 INFO L432 stractBuchiCegarLoop]: Abstraction has 319 states and 411 transitions. [2025-01-10 07:11:02,226 INFO L338 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2025-01-10 07:11:02,227 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 319 states and 411 transitions. [2025-01-10 07:11:02,227 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 6 [2025-01-10 07:11:02,227 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:11:02,227 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:11:02,228 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 5, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] [2025-01-10 07:11:02,228 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [8, 7, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1] [2025-01-10 07:11:02,228 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< [2025-01-10 07:11:02,229 INFO L754 eck$LassoCheckResult]: Loop: "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume !(merge_#t~mem6#1 < merge_#t~mem7#1);merge_#t~post10#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post10#1;call merge_#t~mem11#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post10#1, 4);merge_#t~ite12#1 := merge_#t~mem11#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume merge_~i~0#1 == merge_~m#1;merge_#t~post4#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post4#1;call merge_#t~mem5#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post4#1, 4);merge_#t~ite13#1 := merge_#t~mem5#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< [2025-01-10 07:11:02,229 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:11:02,229 INFO L85 PathProgramCache]: Analyzing trace with hash -1898883358, now seen corresponding path program 8 times [2025-01-10 07:11:02,229 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:11:02,229 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1796183762] [2025-01-10 07:11:02,229 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:11:02,229 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:11:02,240 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 76 statements into 2 equivalence classes. [2025-01-10 07:11:02,251 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 76 of 76 statements. [2025-01-10 07:11:02,252 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:11:02,252 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:11:02,509 INFO L134 CoverageAnalysis]: Checked inductivity of 140 backedges. 61 proven. 40 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2025-01-10 07:11:02,509 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:11:02,510 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1796183762] [2025-01-10 07:11:02,510 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1796183762] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:11:02,510 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1611130137] [2025-01-10 07:11:02,510 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:11:02,510 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:11:02,510 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:11:02,515 INFO L229 MonitoredProcess]: Starting monitored process 140 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:11:02,519 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (140)] Waiting until timeout for monitored process [2025-01-10 07:11:02,643 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 76 statements into 2 equivalence classes. [2025-01-10 07:11:02,687 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 76 of 76 statements. [2025-01-10 07:11:02,687 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:11:02,687 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:11:02,693 INFO L256 TraceCheckSpWp]: Trace formula consists of 544 conjuncts, 20 conjuncts are in the unsatisfiable core [2025-01-10 07:11:02,695 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:11:02,824 INFO L134 CoverageAnalysis]: Checked inductivity of 140 backedges. 67 proven. 34 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2025-01-10 07:11:02,824 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:11:03,197 INFO L134 CoverageAnalysis]: Checked inductivity of 140 backedges. 67 proven. 34 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2025-01-10 07:11:03,198 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1611130137] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:11:03,198 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:11:03,198 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18, 18] total 30 [2025-01-10 07:11:03,198 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [228058044] [2025-01-10 07:11:03,198 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:11:03,198 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:11:03,199 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:11:03,199 INFO L85 PathProgramCache]: Analyzing trace with hash -1319706711, now seen corresponding path program 2 times [2025-01-10 07:11:03,199 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:11:03,199 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1390932026] [2025-01-10 07:11:03,199 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:11:03,199 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:11:03,211 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 88 statements into 2 equivalence classes. [2025-01-10 07:11:03,223 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 88 of 88 statements. [2025-01-10 07:11:03,223 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:11:03,223 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:11:03,434 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 77 proven. 70 refuted. 0 times theorem prover too weak. 89 trivial. 0 not checked. [2025-01-10 07:11:03,434 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:11:03,434 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1390932026] [2025-01-10 07:11:03,434 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1390932026] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:11:03,434 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1870712141] [2025-01-10 07:11:03,435 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-10 07:11:03,435 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:11:03,435 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:11:03,437 INFO L229 MonitoredProcess]: Starting monitored process 141 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:11:03,441 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (141)] Waiting until timeout for monitored process [2025-01-10 07:11:03,562 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 88 statements into 2 equivalence classes. [2025-01-10 07:11:03,611 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) and asserted 88 of 88 statements. [2025-01-10 07:11:03,611 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2025-01-10 07:11:03,611 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:11:03,615 INFO L256 TraceCheckSpWp]: Trace formula consists of 606 conjuncts, 9 conjuncts are in the unsatisfiable core [2025-01-10 07:11:03,617 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:11:03,698 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 77 proven. 68 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2025-01-10 07:11:03,698 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:11:03,850 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 77 proven. 68 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2025-01-10 07:11:03,851 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1870712141] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:11:03,851 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:11:03,851 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 7, 7] total 16 [2025-01-10 07:11:03,851 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1737044667] [2025-01-10 07:11:03,851 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:11:03,851 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:11:03,851 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:11:03,852 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2025-01-10 07:11:03,852 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=745, Unknown=0, NotChecked=0, Total=870 [2025-01-10 07:11:03,853 INFO L87 Difference]: Start difference. First operand 319 states and 411 transitions. cyclomatic complexity: 110 Second operand has 30 states, 28 states have (on average 3.357142857142857) internal successors, (94), 27 states have internal predecessors, (94), 7 states have call successors, (10), 4 states have call predecessors, (10), 2 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2025-01-10 07:11:04,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:11:04,048 INFO L93 Difference]: Finished difference Result 574 states and 745 transitions. [2025-01-10 07:11:04,048 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 574 states and 745 transitions. [2025-01-10 07:11:04,050 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 6 [2025-01-10 07:11:04,053 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 574 states to 574 states and 745 transitions. [2025-01-10 07:11:04,054 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 106 [2025-01-10 07:11:04,054 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 106 [2025-01-10 07:11:04,054 INFO L73 IsDeterministic]: Start isDeterministic. Operand 574 states and 745 transitions. [2025-01-10 07:11:04,054 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:11:04,054 INFO L218 hiAutomatonCegarLoop]: Abstraction has 574 states and 745 transitions. [2025-01-10 07:11:04,054 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 574 states and 745 transitions. [2025-01-10 07:11:04,058 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 574 to 340. [2025-01-10 07:11:04,058 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 340 states, 313 states have (on average 1.255591054313099) internal successors, (393), 314 states have internal predecessors, (393), 16 states have call successors, (16), 10 states have call predecessors, (16), 11 states have return successors, (28), 15 states have call predecessors, (28), 14 states have call successors, (28) [2025-01-10 07:11:04,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 340 states to 340 states and 437 transitions. [2025-01-10 07:11:04,059 INFO L240 hiAutomatonCegarLoop]: Abstraction has 340 states and 437 transitions. [2025-01-10 07:11:04,060 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2025-01-10 07:11:04,060 INFO L432 stractBuchiCegarLoop]: Abstraction has 340 states and 437 transitions. [2025-01-10 07:11:04,060 INFO L338 stractBuchiCegarLoop]: ======== Iteration 24 ============ [2025-01-10 07:11:04,060 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 340 states and 437 transitions. [2025-01-10 07:11:04,061 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 6 [2025-01-10 07:11:04,061 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:11:04,061 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:11:04,062 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 5, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] [2025-01-10 07:11:04,062 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [8, 7, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1] [2025-01-10 07:11:04,062 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< [2025-01-10 07:11:04,062 INFO L754 eck$LassoCheckResult]: Loop: "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume !(merge_#t~mem6#1 < merge_#t~mem7#1);merge_#t~post10#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post10#1;call merge_#t~mem11#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post10#1, 4);merge_#t~ite12#1 := merge_#t~mem11#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume merge_~i~0#1 == merge_~m#1;merge_#t~post4#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post4#1;call merge_#t~mem5#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post4#1, 4);merge_#t~ite13#1 := merge_#t~mem5#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< [2025-01-10 07:11:04,062 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:11:04,062 INFO L85 PathProgramCache]: Analyzing trace with hash 782476955, now seen corresponding path program 9 times [2025-01-10 07:11:04,062 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:11:04,062 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1537546016] [2025-01-10 07:11:04,063 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:11:04,063 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:11:04,095 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 79 statements into 7 equivalence classes. [2025-01-10 07:11:04,132 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) and asserted 73 of 79 statements. [2025-01-10 07:11:04,132 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2025-01-10 07:11:04,132 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:11:04,785 INFO L134 CoverageAnalysis]: Checked inductivity of 155 backedges. 38 proven. 48 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2025-01-10 07:11:04,786 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:11:04,786 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1537546016] [2025-01-10 07:11:04,786 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1537546016] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:11:04,786 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [406498269] [2025-01-10 07:11:04,786 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:11:04,786 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:11:04,786 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:11:04,788 INFO L229 MonitoredProcess]: Starting monitored process 142 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:11:04,790 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (142)] Waiting until timeout for monitored process [2025-01-10 07:11:04,930 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 79 statements into 7 equivalence classes. [2025-01-10 07:11:05,048 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) and asserted 73 of 79 statements. [2025-01-10 07:11:05,049 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2025-01-10 07:11:05,049 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:11:05,051 INFO L256 TraceCheckSpWp]: Trace formula consists of 521 conjuncts, 29 conjuncts are in the unsatisfiable core [2025-01-10 07:11:05,055 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:11:05,351 INFO L134 CoverageAnalysis]: Checked inductivity of 155 backedges. 31 proven. 46 refuted. 0 times theorem prover too weak. 78 trivial. 0 not checked. [2025-01-10 07:11:05,352 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:11:05,910 INFO L134 CoverageAnalysis]: Checked inductivity of 155 backedges. 31 proven. 46 refuted. 0 times theorem prover too weak. 78 trivial. 0 not checked. [2025-01-10 07:11:05,910 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [406498269] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:11:05,910 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:11:05,910 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 16, 16] total 40 [2025-01-10 07:11:05,911 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1007030136] [2025-01-10 07:11:05,911 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:11:05,911 INFO L757 eck$LassoCheckResult]: stem already infeasible [2025-01-10 07:11:05,911 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:11:05,911 INFO L85 PathProgramCache]: Analyzing trace with hash -1319706711, now seen corresponding path program 3 times [2025-01-10 07:11:05,911 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:11:05,911 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1907306342] [2025-01-10 07:11:05,911 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:11:05,911 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:11:05,923 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 88 statements into 8 equivalence classes. [2025-01-10 07:11:05,941 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) and asserted 59 of 88 statements. [2025-01-10 07:11:05,941 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2025-01-10 07:11:05,941 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:11:06,082 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 111 proven. 33 refuted. 0 times theorem prover too weak. 92 trivial. 0 not checked. [2025-01-10 07:11:06,082 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:11:06,082 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1907306342] [2025-01-10 07:11:06,082 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1907306342] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:11:06,082 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1565252173] [2025-01-10 07:11:06,083 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-01-10 07:11:06,083 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:11:06,083 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:11:06,085 INFO L229 MonitoredProcess]: Starting monitored process 143 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:11:06,089 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (143)] Waiting until timeout for monitored process [2025-01-10 07:11:06,221 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 88 statements into 8 equivalence classes. [2025-01-10 07:11:06,296 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) and asserted 59 of 88 statements. [2025-01-10 07:11:06,297 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2025-01-10 07:11:06,297 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:11:06,298 INFO L256 TraceCheckSpWp]: Trace formula consists of 398 conjuncts, 19 conjuncts are in the unsatisfiable core [2025-01-10 07:11:06,300 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-10 07:11:06,419 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 111 proven. 33 refuted. 0 times theorem prover too weak. 92 trivial. 0 not checked. [2025-01-10 07:11:06,419 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-10 07:11:06,592 INFO L134 CoverageAnalysis]: Checked inductivity of 236 backedges. 111 proven. 33 refuted. 0 times theorem prover too weak. 92 trivial. 0 not checked. [2025-01-10 07:11:06,592 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1565252173] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-10 07:11:06,592 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-10 07:11:06,592 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 20 [2025-01-10 07:11:06,592 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1887845508] [2025-01-10 07:11:06,592 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-10 07:11:06,593 INFO L769 eck$LassoCheckResult]: loop already infeasible [2025-01-10 07:11:06,593 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-10 07:11:06,593 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 40 interpolants. [2025-01-10 07:11:06,593 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=170, Invalid=1390, Unknown=0, NotChecked=0, Total=1560 [2025-01-10 07:11:06,593 INFO L87 Difference]: Start difference. First operand 340 states and 437 transitions. cyclomatic complexity: 116 Second operand has 40 states, 39 states have (on average 2.948717948717949) internal successors, (115), 36 states have internal predecessors, (115), 5 states have call successors, (9), 2 states have call predecessors, (9), 4 states have return successors, (10), 8 states have call predecessors, (10), 4 states have call successors, (10) [2025-01-10 07:11:09,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-10 07:11:09,487 INFO L93 Difference]: Finished difference Result 1274 states and 1688 transitions. [2025-01-10 07:11:09,487 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1274 states and 1688 transitions. [2025-01-10 07:11:09,491 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2025-01-10 07:11:09,497 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1274 states to 1274 states and 1688 transitions. [2025-01-10 07:11:09,498 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 113 [2025-01-10 07:11:09,498 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 113 [2025-01-10 07:11:09,498 INFO L73 IsDeterministic]: Start isDeterministic. Operand 1274 states and 1688 transitions. [2025-01-10 07:11:09,498 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-01-10 07:11:09,498 INFO L218 hiAutomatonCegarLoop]: Abstraction has 1274 states and 1688 transitions. [2025-01-10 07:11:09,499 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1274 states and 1688 transitions. [2025-01-10 07:11:09,506 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1274 to 620. [2025-01-10 07:11:09,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 620 states, 588 states have (on average 1.2585034013605443) internal successors, (740), 588 states have internal predecessors, (740), 18 states have call successors, (18), 10 states have call predecessors, (18), 14 states have return successors, (42), 21 states have call predecessors, (42), 16 states have call successors, (42) [2025-01-10 07:11:09,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 620 states to 620 states and 800 transitions. [2025-01-10 07:11:09,508 INFO L240 hiAutomatonCegarLoop]: Abstraction has 620 states and 800 transitions. [2025-01-10 07:11:09,508 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 84 states. [2025-01-10 07:11:09,508 INFO L432 stractBuchiCegarLoop]: Abstraction has 620 states and 800 transitions. [2025-01-10 07:11:09,508 INFO L338 stractBuchiCegarLoop]: ======== Iteration 25 ============ [2025-01-10 07:11:09,508 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 620 states and 800 transitions. [2025-01-10 07:11:09,513 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 7 [2025-01-10 07:11:09,513 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-01-10 07:11:09,513 INFO L119 BuchiIsEmpty]: Starting construction of run [2025-01-10 07:11:09,514 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1] [2025-01-10 07:11:09,514 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [16, 16, 15, 14, 14, 10, 10, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 4, 4, 3, 3] [2025-01-10 07:11:09,515 INFO L752 eck$LassoCheckResult]: Stem: "assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;" "assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet18#1, main_#t~malloc19#1.base, main_#t~malloc19#1.offset, main_#t~nondet20#1, main_#t~post21#1, main_~i~1#1, main_~n~0#1, main_~a~0#1.base, main_~a~0#1.offset;havoc main_#t~nondet18#1;main_~n~0#1 := main_#t~nondet18#1;havoc main_#t~nondet18#1;" "assume !(main_~n~0#1 < 1);call main_#t~malloc19#1.base, main_#t~malloc19#1.offset := #Ultimate.allocOnHeap(4 * main_~n~0#1 % 18446744073709551616);main_~a~0#1.base, main_~a~0#1.offset := main_#t~malloc19#1.base, main_#t~malloc19#1.offset;havoc main_#t~malloc19#1.base, main_#t~malloc19#1.offset;main_~i~1#1 := 0;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume main_~i~1#1 < main_~n~0#1;havoc main_#t~nondet20#1;call write~int#1(main_#t~nondet20#1, main_~a~0#1.base, main_~a~0#1.offset + 4 * main_~i~1#1, 4);havoc main_#t~nondet20#1;main_#t~post21#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post21#1;havoc main_#t~post21#1;" "assume !(main_~i~1#1 < main_~n~0#1);havoc main_~i~1#1;" "call merge_sort(main_~a~0#1.base, main_~a~0#1.offset, main_~n~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< [2025-01-10 07:11:09,515 INFO L754 eck$LassoCheckResult]: Loop: "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume !(merge_#t~mem6#1 < merge_#t~mem7#1);merge_#t~post10#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post10#1;call merge_#t~mem11#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post10#1, 4);merge_#t~ite12#1 := merge_#t~mem11#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume merge_~i~0#1 == merge_~m#1;merge_#t~post4#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post4#1;call merge_#t~mem5#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post4#1, 4);merge_#t~ite13#1 := merge_#t~mem5#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume !(~n#1 < 2);~m~0#1 := (if ~n#1 < 0 && 0 != ~n#1 % 2 then 1 + ~n#1 / 2 else ~n#1 / 2);" "call merge_sort(~a#1.base, ~a#1.offset, ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< "~a#1.base, ~a#1.offset := #in~a#1.base, #in~a#1.offset;~n#1 := #in~n#1;" "assume ~n#1 < 2;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume merge_#t~mem6#1 < merge_#t~mem7#1;merge_#t~post8#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post8#1;call merge_#t~mem9#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post8#1, 4);merge_#t~ite12#1 := merge_#t~mem9#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume merge_~j~0#1 == merge_~n#1;merge_#t~post2#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post2#1;call merge_#t~mem3#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post2#1, 4);merge_#t~ite14#1 := merge_#t~mem3#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume !(merge_#t~mem6#1 < merge_#t~mem7#1);merge_#t~post10#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post10#1;call merge_#t~mem11#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post10#1, 4);merge_#t~ite12#1 := merge_#t~mem11#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume merge_~i~0#1 == merge_~m#1;merge_#t~post4#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post4#1;call merge_#t~mem5#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post4#1, 4);merge_#t~ite13#1 := merge_#t~mem5#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#66#return;" "assume { :begin_inline_merge } true;merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1 := ~a#1.base, ~a#1.offset, ~n#1, ~m~0#1;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;merge_~a#1.base, merge_~a#1.offset := merge_#in~a#1.base, merge_#in~a#1.offset;merge_~n#1 := merge_#in~n#1;merge_~m#1 := merge_#in~m#1;havoc merge_~i~0#1;havoc merge_~j~0#1;havoc merge_~k~0#1;call merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset := #Ultimate.allocOnHeap(4 * merge_~n#1 % 18446744073709551616);merge_~x~0#1.base, merge_~x~0#1.offset := merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset;merge_~i~0#1 := 0;merge_~j~0#1 := merge_~m#1;merge_~k~0#1 := 0;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume !(merge_~i~0#1 == merge_~m#1);call merge_#t~mem6#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~j~0#1, 4);call merge_#t~mem7#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);" "assume !(merge_#t~mem6#1 < merge_#t~mem7#1);merge_#t~post10#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post10#1;call merge_#t~mem11#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post10#1, 4);merge_#t~ite12#1 := merge_#t~mem11#1;" "merge_#t~ite13#1 := merge_#t~ite12#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume merge_~k~0#1 < merge_~n#1;" "assume !(merge_~j~0#1 == merge_~n#1);" "assume merge_~i~0#1 == merge_~m#1;merge_#t~post4#1 := merge_~j~0#1;merge_~j~0#1 := 1 + merge_#t~post4#1;call merge_#t~mem5#1 := read~int#1(merge_~a#1.base, merge_~a#1.offset + 4 * merge_#t~post4#1, 4);merge_#t~ite13#1 := merge_#t~mem5#1;" "merge_#t~ite14#1 := merge_#t~ite13#1;" "call write~int#0(merge_#t~ite14#1, merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~k~0#1, 4);havoc merge_#t~ite14#1;havoc merge_#t~post2#1;havoc merge_#t~mem3#1;havoc merge_#t~ite13#1;havoc merge_#t~post4#1;havoc merge_#t~mem5#1;havoc merge_#t~mem6#1;havoc merge_#t~mem7#1;havoc merge_#t~ite12#1;havoc merge_#t~post8#1;havoc merge_#t~mem9#1;havoc merge_#t~post10#1;havoc merge_#t~mem11#1;merge_#t~post15#1 := merge_~k~0#1;merge_~k~0#1 := 1 + merge_#t~post15#1;havoc merge_#t~post15#1;" "assume !(merge_~k~0#1 < merge_~n#1);merge_~i~0#1 := 0;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume merge_~i~0#1 < merge_~n#1;call merge_#t~mem16#1 := read~int#0(merge_~x~0#1.base, merge_~x~0#1.offset + 4 * merge_~i~0#1, 4);call write~int#1(merge_#t~mem16#1, merge_~a#1.base, merge_~a#1.offset + 4 * merge_~i~0#1, 4);havoc merge_#t~mem16#1;merge_#t~post17#1 := merge_~i~0#1;merge_~i~0#1 := 1 + merge_#t~post17#1;havoc merge_#t~post17#1;" "assume !(merge_~i~0#1 < merge_~n#1);call ULTIMATE.dealloc(merge_~x~0#1.base, merge_~x~0#1.offset);" "havoc merge_#t~malloc1#1.base, merge_#t~malloc1#1.offset, merge_#t~ite14#1, merge_#t~post2#1, merge_#t~mem3#1, merge_#t~ite13#1, merge_#t~post4#1, merge_#t~mem5#1, merge_#t~mem6#1, merge_#t~mem7#1, merge_#t~ite12#1, merge_#t~post8#1, merge_#t~mem9#1, merge_#t~post10#1, merge_#t~mem11#1, merge_#t~post15#1, merge_#t~mem16#1, merge_#t~post17#1, merge_~a#1.base, merge_~a#1.offset, merge_~n#1, merge_~m#1, merge_~i~0#1, merge_~j~0#1, merge_~k~0#1, merge_~x~0#1.base, merge_~x~0#1.offset;havoc merge_#in~a#1.base, merge_#in~a#1.offset, merge_#in~n#1, merge_#in~m#1;assume { :end_inline_merge } true;" "assume true;" >"#64#return;" "call merge_sort(~a#1.base, ~a#1.offset + 4 * ~m~0#1, ~n#1 - ~m~0#1);"< [2025-01-10 07:11:09,515 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:11:09,515 INFO L85 PathProgramCache]: Analyzing trace with hash -683749117, now seen corresponding path program 10 times [2025-01-10 07:11:09,516 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:11:09,516 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [514695762] [2025-01-10 07:11:09,516 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:11:09,516 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:11:09,527 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 80 statements into 2 equivalence classes. [2025-01-10 07:11:09,555 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 80 of 80 statements. [2025-01-10 07:11:09,555 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-01-10 07:11:09,555 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:11:09,556 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-10 07:11:09,559 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 80 statements into 1 equivalence classes. [2025-01-10 07:11:09,577 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 80 of 80 statements. [2025-01-10 07:11:09,577 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-10 07:11:09,577 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-10 07:11:09,589 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-10 07:11:09,589 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-10 07:11:09,589 INFO L85 PathProgramCache]: Analyzing trace with hash -742081665, now seen corresponding path program 4 times [2025-01-10 07:11:09,589 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-10 07:11:09,590 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1610163436] [2025-01-10 07:11:09,590 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:11:09,590 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-10 07:11:09,611 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 198 statements into 2 equivalence classes. [2025-01-10 07:11:09,728 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 198 of 198 statements. [2025-01-10 07:11:09,728 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-01-10 07:11:09,728 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-10 07:11:09,868 INFO L134 CoverageAnalysis]: Checked inductivity of 1325 backedges. 339 proven. 140 refuted. 0 times theorem prover too weak. 846 trivial. 0 not checked. [2025-01-10 07:11:09,868 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-10 07:11:09,868 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1610163436] [2025-01-10 07:11:09,868 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1610163436] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-10 07:11:09,868 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2046766014] [2025-01-10 07:11:09,868 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-01-10 07:11:09,868 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-10 07:11:09,868 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-10 07:11:09,872 INFO L229 MonitoredProcess]: Starting monitored process 144 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-01-10 07:11:09,878 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (144)] Waiting until timeout for monitored process [2025-01-10 07:11:10,051 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 198 statements into 2 equivalence classes.