./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/loops/eureka_05.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 3289d67d Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i ../sv-benchmarks/c/loops/eureka_05.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/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 32bit --witnessprinter.graph.data.programhash 3f12ca1e314a03dfb1c8beadd0c1a180c2d2339dd5f3109d5999df06d52395ab --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.fs.icfgbuilder-eval-3289d67-m [2024-11-17 08:31:41,955 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-17 08:31:42,046 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2024-11-17 08:31:42,053 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-17 08:31:42,055 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-17 08:31:42,055 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder.Remove goto edges from RCFG [2024-11-17 08:31:42,082 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-17 08:31:42,082 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-17 08:31:42,083 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-17 08:31:42,087 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-17 08:31:42,087 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-17 08:31:42,088 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-17 08:31:42,088 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-17 08:31:42,089 INFO L153 SettingsManager]: * Use SBE=true [2024-11-17 08:31:42,090 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-11-17 08:31:42,090 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-11-17 08:31:42,090 INFO L153 SettingsManager]: * Use old map elimination=false [2024-11-17 08:31:42,090 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-11-17 08:31:42,090 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-11-17 08:31:42,090 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-11-17 08:31:42,091 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-17 08:31:42,092 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-11-17 08:31:42,092 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-17 08:31:42,093 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-17 08:31:42,093 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-17 08:31:42,093 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-17 08:31:42,093 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-11-17 08:31:42,094 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-11-17 08:31:42,094 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-11-17 08:31:42,094 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-17 08:31:42,094 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-11-17 08:31:42,095 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-17 08:31:42,095 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-17 08:31:42,096 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-11-17 08:31:42,096 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-17 08:31:42,096 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2024-11-17 08:31:42,097 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-17 08:31:42,097 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-17 08:31:42,097 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-17 08:31:42,098 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-11-17 08:31:42,098 INFO L153 SettingsManager]: * TransformationType=MODULO_NEIGHBOR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release 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/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 -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 3f12ca1e314a03dfb1c8beadd0c1a180c2d2339dd5f3109d5999df06d52395ab [2024-11-17 08:31:42,377 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-17 08:31:42,401 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-17 08:31:42,405 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-17 08:31:42,406 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-17 08:31:42,407 INFO L274 PluginConnector]: CDTParser initialized [2024-11-17 08:31:42,408 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/loops/eureka_05.i [2024-11-17 08:31:43,898 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-17 08:31:44,087 INFO L384 CDTParser]: Found 1 translation units. [2024-11-17 08:31:44,088 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/loops/eureka_05.i [2024-11-17 08:31:44,097 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/da8604737/ec3d7ce0a0c2447ca87489f6e027e438/FLAGf41037244 [2024-11-17 08:31:44,476 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/da8604737/ec3d7ce0a0c2447ca87489f6e027e438 [2024-11-17 08:31:44,479 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-17 08:31:44,482 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-17 08:31:44,483 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-17 08:31:44,484 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-17 08:31:44,489 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-17 08:31:44,490 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,491 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7974cae0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44, skipping insertion in model container [2024-11-17 08:31:44,491 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,508 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-17 08:31:44,721 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-17 08:31:44,734 INFO L200 MainTranslator]: Completed pre-run [2024-11-17 08:31:44,755 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-17 08:31:44,776 INFO L204 MainTranslator]: Completed translation [2024-11-17 08:31:44,776 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44 WrapperNode [2024-11-17 08:31:44,777 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-17 08:31:44,777 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-17 08:31:44,778 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-17 08:31:44,778 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-17 08:31:44,784 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,791 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,809 INFO L138 Inliner]: procedures = 16, calls = 25, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 80 [2024-11-17 08:31:44,810 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-17 08:31:44,811 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-17 08:31:44,811 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-17 08:31:44,811 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-17 08:31:44,820 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,820 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,823 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,848 INFO L175 MemorySlicer]: Split 15 memory accesses to 3 slices as follows [2, 11, 2]. 73 percent of accesses are in the largest equivalence class. The 7 initializations are split as follows [2, 5, 0]. The 3 writes are split as follows [0, 2, 1]. [2024-11-17 08:31:44,849 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,849 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,856 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,856 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,861 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,863 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,867 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-17 08:31:44,868 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2024-11-17 08:31:44,868 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2024-11-17 08:31:44,868 INFO L274 PluginConnector]: IcfgBuilder initialized [2024-11-17 08:31:44,869 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (1/1) ... [2024-11-17 08:31:44,880 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:44,892 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:44,908 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:44,911 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2024-11-17 08:31:44,951 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-17 08:31:44,951 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-17 08:31:44,951 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-11-17 08:31:44,951 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-11-17 08:31:44,951 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-11-17 08:31:44,952 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-11-17 08:31:44,952 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-11-17 08:31:44,952 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-11-17 08:31:44,952 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-17 08:31:44,952 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-17 08:31:44,952 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-11-17 08:31:44,952 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-11-17 08:31:44,952 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2024-11-17 08:31:44,952 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-11-17 08:31:45,022 INFO L256 CfgBuilder]: Building ICFG [2024-11-17 08:31:45,023 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-17 08:31:45,186 INFO L? ?]: Removed 12 outVars from TransFormulas that were not future-live. [2024-11-17 08:31:45,186 INFO L307 CfgBuilder]: Performing block encoding [2024-11-17 08:31:45,198 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-17 08:31:45,198 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2024-11-17 08:31:45,198 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.11 08:31:45 BoogieIcfgContainer [2024-11-17 08:31:45,198 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2024-11-17 08:31:45,199 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-11-17 08:31:45,199 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-11-17 08:31:45,206 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-11-17 08:31:45,207 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-17 08:31:45,207 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 17.11 08:31:44" (1/3) ... [2024-11-17 08:31:45,208 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@286d2a9d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 17.11 08:31:45, skipping insertion in model container [2024-11-17 08:31:45,209 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-17 08:31:45,209 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:31:44" (2/3) ... [2024-11-17 08:31:45,210 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@286d2a9d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 17.11 08:31:45, skipping insertion in model container [2024-11-17 08:31:45,210 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-17 08:31:45,210 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.11 08:31:45" (3/3) ... [2024-11-17 08:31:45,213 INFO L332 chiAutomizerObserver]: Analyzing ICFG eureka_05.i [2024-11-17 08:31:45,280 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-11-17 08:31:45,280 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-11-17 08:31:45,280 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-11-17 08:31:45,280 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-11-17 08:31:45,280 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-11-17 08:31:45,280 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-11-17 08:31:45,281 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-11-17 08:31:45,281 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-11-17 08:31:45,285 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 24 states, 23 states have (on average 1.4782608695652173) internal successors, (34), 23 states have internal predecessors, (34), 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) [2024-11-17 08:31:45,297 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 16 [2024-11-17 08:31:45,298 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:45,298 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:45,302 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1] [2024-11-17 08:31:45,302 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-17 08:31:45,302 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-11-17 08:31:45,302 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 24 states, 23 states have (on average 1.4782608695652173) internal successors, (34), 23 states have internal predecessors, (34), 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) [2024-11-17 08:31:45,304 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 16 [2024-11-17 08:31:45,304 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:45,304 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:45,304 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1] [2024-11-17 08:31:45,304 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-17 08:31:45,311 INFO L745 eck$LassoCheckResult]: Stem: 3#ULTIMATE.startENTRYtrue assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 20#ULTIMATE.init_returnLabel#1true assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 7#L44true [2024-11-17 08:31:45,312 INFO L747 eck$LassoCheckResult]: Loop: 7#L44true assume true; 14#L44-1true assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 7#L44true [2024-11-17 08:31:45,316 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:45,316 INFO L85 PathProgramCache]: Analyzing trace with hash 2272, now seen corresponding path program 1 times [2024-11-17 08:31:45,324 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:45,325 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [845774975] [2024-11-17 08:31:45,325 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:45,325 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:45,426 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:45,427 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:45,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:45,487 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:45,492 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:45,493 INFO L85 PathProgramCache]: Analyzing trace with hash 2176, now seen corresponding path program 1 times [2024-11-17 08:31:45,493 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:45,495 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [642597900] [2024-11-17 08:31:45,495 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:45,495 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:45,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:45,509 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:45,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:45,536 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:45,540 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:45,540 INFO L85 PathProgramCache]: Analyzing trace with hash 2184607, now seen corresponding path program 1 times [2024-11-17 08:31:45,541 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:45,541 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [115015015] [2024-11-17 08:31:45,541 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:45,542 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:45,567 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:45,568 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:45,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:45,591 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:46,134 INFO L204 LassoAnalysis]: Preferences: [2024-11-17 08:31:46,135 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-17 08:31:46,135 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-17 08:31:46,136 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-17 08:31:46,136 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-17 08:31:46,137 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:46,137 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-17 08:31:46,137 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-17 08:31:46,137 INFO L132 ssoRankerPreferences]: Filename of dumped script: eureka_05.i_Iteration1_Lasso [2024-11-17 08:31:46,137 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-17 08:31:46,138 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-17 08:31:46,155 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:31:46,166 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:31:46,412 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:31:46,424 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:31:46,470 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:31:46,474 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:31:46,477 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:31:46,480 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:31:46,485 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:31:46,488 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:31:46,764 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-17 08:31:46,768 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-17 08:31:46,769 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:46,770 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:46,772 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:46,774 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2024-11-17 08:31:46,775 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 [2024-11-17 08:31:46,789 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:46,790 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:31:46,791 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:46,791 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:46,791 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:46,793 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:31:46,793 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:31:46,795 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:46,813 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Ended with exit code 0 [2024-11-17 08:31:46,814 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:46,814 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:46,816 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:46,818 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2024-11-17 08:31:46,820 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 [2024-11-17 08:31:46,833 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:46,833 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:46,833 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:46,833 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:46,840 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:31:46,841 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:31:46,846 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:46,860 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2024-11-17 08:31:46,862 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:46,862 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:46,864 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:46,868 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2024-11-17 08:31:46,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 [2024-11-17 08:31:46,882 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:46,883 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:46,883 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:46,883 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:46,885 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:31:46,886 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:31:46,889 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:46,905 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Ended with exit code 0 [2024-11-17 08:31:46,905 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:46,906 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:46,908 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:46,909 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2024-11-17 08:31:46,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 [2024-11-17 08:31:46,923 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:46,924 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:46,924 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:46,924 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:46,927 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:31:46,927 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:31:46,931 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:46,946 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Ended with exit code 0 [2024-11-17 08:31:46,947 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:46,947 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:46,949 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:46,950 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2024-11-17 08:31:46,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 [2024-11-17 08:31:46,964 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:46,964 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:46,964 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:46,964 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:46,967 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:31:46,967 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:31:46,970 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:46,984 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Forceful destruction successful, exit code 0 [2024-11-17 08:31:46,985 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:46,985 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:46,986 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:46,987 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2024-11-17 08:31:46,988 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 [2024-11-17 08:31:47,000 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:47,001 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:47,001 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:47,001 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:47,004 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:31:47,004 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:31:47,013 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:47,029 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Ended with exit code 0 [2024-11-17 08:31:47,030 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:47,030 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:47,032 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:47,034 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2024-11-17 08:31:47,035 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 [2024-11-17 08:31:47,047 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:47,048 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:47,048 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:47,048 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:47,050 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:31:47,050 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:31:47,054 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:47,069 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Ended with exit code 0 [2024-11-17 08:31:47,069 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:47,069 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:47,071 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:47,074 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 [2024-11-17 08:31:47,078 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2024-11-17 08:31:47,087 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:47,088 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:31:47,088 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:47,088 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:47,088 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:47,089 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:31:47,089 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:31:47,090 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:47,105 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Ended with exit code 0 [2024-11-17 08:31:47,106 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:47,106 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:47,108 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:47,109 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Waiting until timeout for monitored process [2024-11-17 08:31:47,110 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 [2024-11-17 08:31:47,124 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:47,124 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:47,124 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:47,124 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:47,128 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:31:47,128 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:31:47,134 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:47,150 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Forceful destruction successful, exit code 0 [2024-11-17 08:31:47,151 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:47,151 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:47,152 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:47,154 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Waiting until timeout for monitored process [2024-11-17 08:31:47,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 [2024-11-17 08:31:47,169 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:47,169 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:47,169 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:47,169 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:47,172 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:31:47,172 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:31:47,178 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:47,193 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Ended with exit code 0 [2024-11-17 08:31:47,194 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:47,194 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:47,195 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:47,196 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Waiting until timeout for monitored process [2024-11-17 08:31:47,197 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 [2024-11-17 08:31:47,206 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:47,207 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:47,207 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:47,207 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:47,209 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:31:47,209 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:31:47,213 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:31:47,228 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Forceful destruction successful, exit code 0 [2024-11-17 08:31:47,229 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:47,229 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:47,231 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:47,232 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Waiting until timeout for monitored process [2024-11-17 08:31:47,234 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 [2024-11-17 08:31:47,246 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:31:47,246 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:31:47,246 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:31:47,246 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:31:47,255 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:31:47,255 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:31:47,264 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-17 08:31:47,312 INFO L443 ModelExtractionUtils]: Simplification made 14 calls to the SMT solver. [2024-11-17 08:31:47,312 INFO L444 ModelExtractionUtils]: 0 out of 13 variables were initially zero. Simplification set additionally 10 variables to zero. [2024-11-17 08:31:47,315 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:31:47,315 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:47,334 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:31:47,335 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Waiting until timeout for monitored process [2024-11-17 08:31:47,336 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-17 08:31:47,351 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-17 08:31:47,351 INFO L474 LassoAnalysis]: Proved termination. [2024-11-17 08:31:47,352 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~i~1#1, v_rep(select #length ULTIMATE.start_main_~#array~1#1.base)_1) = 8*ULTIMATE.start_main_~i~1#1 + 1*v_rep(select #length ULTIMATE.start_main_~#array~1#1.base)_1 Supporting invariants [] [2024-11-17 08:31:47,367 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Ended with exit code 0 [2024-11-17 08:31:47,382 INFO L156 tatePredicateManager]: 5 out of 5 supporting invariants were superfluous and have been removed [2024-11-17 08:31:47,389 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2024-11-17 08:31:47,390 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2024-11-17 08:31:47,411 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:47,435 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:47,436 INFO L255 TraceCheckSpWp]: Trace formula consists of 51 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-17 08:31:47,437 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:31:47,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:47,455 INFO L255 TraceCheckSpWp]: Trace formula consists of 14 conjuncts, 6 conjuncts are in the unsatisfiable core [2024-11-17 08:31:47,456 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:31:47,463 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:31:47,493 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 [2024-11-17 08:31:47,495 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 24 states, 23 states have (on average 1.4782608695652173) internal successors, (34), 23 states have internal predecessors, (34), 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) Second operand has 3 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 3 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) [2024-11-17 08:31:47,534 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 24 states, 23 states have (on average 1.4782608695652173) internal successors, (34), 23 states have internal predecessors, (34), 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). Second operand has 3 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 3 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 46 states and 66 transitions. Complement of second has 6 states. [2024-11-17 08:31:47,538 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 1 non-accepting loop states 1 accepting loop states [2024-11-17 08:31:47,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 1.3333333333333333) internal successors, (4), 3 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) [2024-11-17 08:31:47,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 33 transitions. [2024-11-17 08:31:47,546 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 33 transitions. Stem has 2 letters. Loop has 2 letters. [2024-11-17 08:31:47,547 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:31:47,547 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 33 transitions. Stem has 4 letters. Loop has 2 letters. [2024-11-17 08:31:47,547 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:31:47,547 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 33 transitions. Stem has 2 letters. Loop has 4 letters. [2024-11-17 08:31:47,547 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:31:47,548 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 46 states and 66 transitions. [2024-11-17 08:31:47,551 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 14 [2024-11-17 08:31:47,555 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 46 states to 22 states and 31 transitions. [2024-11-17 08:31:47,557 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 19 [2024-11-17 08:31:47,557 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 20 [2024-11-17 08:31:47,558 INFO L73 IsDeterministic]: Start isDeterministic. Operand 22 states and 31 transitions. [2024-11-17 08:31:47,558 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:47,558 INFO L218 hiAutomatonCegarLoop]: Abstraction has 22 states and 31 transitions. [2024-11-17 08:31:47,572 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states and 31 transitions. [2024-11-17 08:31:47,580 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 22. [2024-11-17 08:31:47,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 21 states have internal predecessors, (31), 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) [2024-11-17 08:31:47,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 31 transitions. [2024-11-17 08:31:47,583 INFO L240 hiAutomatonCegarLoop]: Abstraction has 22 states and 31 transitions. [2024-11-17 08:31:47,584 INFO L425 stractBuchiCegarLoop]: Abstraction has 22 states and 31 transitions. [2024-11-17 08:31:47,584 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-11-17 08:31:47,584 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 22 states and 31 transitions. [2024-11-17 08:31:47,585 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 14 [2024-11-17 08:31:47,586 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:47,586 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:47,586 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2024-11-17 08:31:47,586 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:31:47,587 INFO L745 eck$LassoCheckResult]: Stem: 125#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 126#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 133#L44 assume true; 135#L44-1 assume !(main_~i~1#1 >= 0); 127#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 128#L30 [2024-11-17 08:31:47,587 INFO L747 eck$LassoCheckResult]: Loop: 128#L30 assume true; 130#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 140#L32 assume !true; 145#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 128#L30 [2024-11-17 08:31:47,587 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:47,587 INFO L85 PathProgramCache]: Analyzing trace with hash 67722788, now seen corresponding path program 1 times [2024-11-17 08:31:47,588 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:47,588 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [136346797] [2024-11-17 08:31:47,588 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:47,588 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:47,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:47,677 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:31:47,677 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:47,677 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [136346797] [2024-11-17 08:31:47,678 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [136346797] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-17 08:31:47,679 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-17 08:31:47,679 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-17 08:31:47,679 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [73299422] [2024-11-17 08:31:47,680 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-17 08:31:47,682 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:31:47,683 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:47,683 INFO L85 PathProgramCache]: Analyzing trace with hash 1876695, now seen corresponding path program 1 times [2024-11-17 08:31:47,684 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:47,684 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [290488425] [2024-11-17 08:31:47,684 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:47,684 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:47,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:47,701 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:31:47,704 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:47,704 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [290488425] [2024-11-17 08:31:47,704 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [290488425] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-17 08:31:47,704 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-17 08:31:47,704 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-17 08:31:47,705 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [945630868] [2024-11-17 08:31:47,705 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-17 08:31:47,705 INFO L762 eck$LassoCheckResult]: loop already infeasible [2024-11-17 08:31:47,706 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:47,707 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2024-11-17 08:31:47,708 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2024-11-17 08:31:47,729 INFO L87 Difference]: Start difference. First operand 22 states and 31 transitions. cyclomatic complexity: 12 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) [2024-11-17 08:31:47,740 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:47,740 INFO L93 Difference]: Finished difference Result 21 states and 26 transitions. [2024-11-17 08:31:47,740 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 21 states and 26 transitions. [2024-11-17 08:31:47,742 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:47,744 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 21 states to 19 states and 24 transitions. [2024-11-17 08:31:47,744 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17 [2024-11-17 08:31:47,748 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17 [2024-11-17 08:31:47,748 INFO L73 IsDeterministic]: Start isDeterministic. Operand 19 states and 24 transitions. [2024-11-17 08:31:47,749 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:47,749 INFO L218 hiAutomatonCegarLoop]: Abstraction has 19 states and 24 transitions. [2024-11-17 08:31:47,749 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 19 states and 24 transitions. [2024-11-17 08:31:47,750 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 19 to 19. [2024-11-17 08:31:47,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.263157894736842) internal successors, (24), 18 states have internal predecessors, (24), 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) [2024-11-17 08:31:47,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 24 transitions. [2024-11-17 08:31:47,750 INFO L240 hiAutomatonCegarLoop]: Abstraction has 19 states and 24 transitions. [2024-11-17 08:31:47,751 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-11-17 08:31:47,755 INFO L425 stractBuchiCegarLoop]: Abstraction has 19 states and 24 transitions. [2024-11-17 08:31:47,756 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-11-17 08:31:47,757 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 19 states and 24 transitions. [2024-11-17 08:31:47,758 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:47,758 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:47,758 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:47,758 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2024-11-17 08:31:47,758 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1] [2024-11-17 08:31:47,762 INFO L745 eck$LassoCheckResult]: Stem: 176#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 177#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 179#L44 assume true; 181#L44-1 assume !(main_~i~1#1 >= 0); 178#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 174#L30 [2024-11-17 08:31:47,762 INFO L747 eck$LassoCheckResult]: Loop: 174#L30 assume true; 175#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 186#L32 assume true; 190#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 191#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 174#L30 [2024-11-17 08:31:47,763 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:47,763 INFO L85 PathProgramCache]: Analyzing trace with hash 67722788, now seen corresponding path program 2 times [2024-11-17 08:31:47,763 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:47,763 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1675814143] [2024-11-17 08:31:47,764 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:47,764 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:47,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:47,792 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Ended with exit code 0 [2024-11-17 08:31:47,850 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:31:47,852 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:47,852 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1675814143] [2024-11-17 08:31:47,852 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1675814143] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-17 08:31:47,852 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-17 08:31:47,852 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-17 08:31:47,852 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1249422696] [2024-11-17 08:31:47,853 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-17 08:31:47,853 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:31:47,853 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:47,853 INFO L85 PathProgramCache]: Analyzing trace with hash 58176756, now seen corresponding path program 1 times [2024-11-17 08:31:47,854 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:47,854 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1969095090] [2024-11-17 08:31:47,854 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:47,854 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:47,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:47,881 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:47,891 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:47,897 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:47,987 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:47,988 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-17 08:31:47,988 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-17 08:31:47,988 INFO L87 Difference]: Start difference. First operand 19 states and 24 transitions. cyclomatic complexity: 8 Second operand has 3 states, 3 states have (on average 1.6666666666666667) internal successors, (5), 3 states have internal predecessors, (5), 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) [2024-11-17 08:31:48,002 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:48,003 INFO L93 Difference]: Finished difference Result 21 states and 25 transitions. [2024-11-17 08:31:48,003 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 21 states and 25 transitions. [2024-11-17 08:31:48,003 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:48,006 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 21 states to 20 states and 24 transitions. [2024-11-17 08:31:48,006 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17 [2024-11-17 08:31:48,007 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17 [2024-11-17 08:31:48,007 INFO L73 IsDeterministic]: Start isDeterministic. Operand 20 states and 24 transitions. [2024-11-17 08:31:48,007 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:48,007 INFO L218 hiAutomatonCegarLoop]: Abstraction has 20 states and 24 transitions. [2024-11-17 08:31:48,007 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states and 24 transitions. [2024-11-17 08:31:48,009 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 19. [2024-11-17 08:31:48,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 18 states have internal predecessors, (23), 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) [2024-11-17 08:31:48,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 23 transitions. [2024-11-17 08:31:48,010 INFO L240 hiAutomatonCegarLoop]: Abstraction has 19 states and 23 transitions. [2024-11-17 08:31:48,010 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-17 08:31:48,011 INFO L425 stractBuchiCegarLoop]: Abstraction has 19 states and 23 transitions. [2024-11-17 08:31:48,012 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-11-17 08:31:48,012 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 19 states and 23 transitions. [2024-11-17 08:31:48,013 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:48,014 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:48,014 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:48,014 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1, 1] [2024-11-17 08:31:48,014 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1] [2024-11-17 08:31:48,015 INFO L745 eck$LassoCheckResult]: Stem: 220#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 221#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 225#L44 assume true; 226#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 227#L44 assume true; 228#L44-1 assume !(main_~i~1#1 >= 0); 222#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 223#L30 [2024-11-17 08:31:48,015 INFO L747 eck$LassoCheckResult]: Loop: 223#L30 assume true; 224#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 232#L32 assume true; 236#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 237#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 223#L30 [2024-11-17 08:31:48,015 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:48,015 INFO L85 PathProgramCache]: Analyzing trace with hash 657155333, now seen corresponding path program 1 times [2024-11-17 08:31:48,015 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:48,015 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1067859022] [2024-11-17 08:31:48,015 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:48,016 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:48,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:48,082 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:31:48,082 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:48,082 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1067859022] [2024-11-17 08:31:48,083 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1067859022] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:31:48,083 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1870267289] [2024-11-17 08:31:48,083 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:48,083 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:31:48,083 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:48,085 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:31:48,087 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2024-11-17 08:31:48,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:48,139 INFO L255 TraceCheckSpWp]: Trace formula consists of 67 conjuncts, 3 conjuncts are in the unsatisfiable core [2024-11-17 08:31:48,140 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:31:48,156 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:31:48,156 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:31:48,177 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:31:48,178 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1870267289] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:31:48,178 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:31:48,178 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 6 [2024-11-17 08:31:48,178 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [485045140] [2024-11-17 08:31:48,178 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:31:48,179 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:31:48,179 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:48,179 INFO L85 PathProgramCache]: Analyzing trace with hash 58176756, now seen corresponding path program 2 times [2024-11-17 08:31:48,180 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:48,180 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1226255139] [2024-11-17 08:31:48,180 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:48,180 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:48,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:48,188 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:48,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:48,194 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:48,278 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:48,278 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-17 08:31:48,279 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2024-11-17 08:31:48,279 INFO L87 Difference]: Start difference. First operand 19 states and 23 transitions. cyclomatic complexity: 7 Second operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 6 states have internal predecessors, (12), 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) [2024-11-17 08:31:48,310 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:48,311 INFO L93 Difference]: Finished difference Result 33 states and 37 transitions. [2024-11-17 08:31:48,311 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 33 states and 37 transitions. [2024-11-17 08:31:48,312 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:48,315 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 33 states to 30 states and 34 transitions. [2024-11-17 08:31:48,316 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 21 [2024-11-17 08:31:48,316 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 21 [2024-11-17 08:31:48,316 INFO L73 IsDeterministic]: Start isDeterministic. Operand 30 states and 34 transitions. [2024-11-17 08:31:48,316 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:48,316 INFO L218 hiAutomatonCegarLoop]: Abstraction has 30 states and 34 transitions. [2024-11-17 08:31:48,316 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states and 34 transitions. [2024-11-17 08:31:48,318 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 25. [2024-11-17 08:31:48,318 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 1.16) internal successors, (29), 24 states have internal predecessors, (29), 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) [2024-11-17 08:31:48,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 29 transitions. [2024-11-17 08:31:48,321 INFO L240 hiAutomatonCegarLoop]: Abstraction has 25 states and 29 transitions. [2024-11-17 08:31:48,321 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-17 08:31:48,322 INFO L425 stractBuchiCegarLoop]: Abstraction has 25 states and 29 transitions. [2024-11-17 08:31:48,322 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-11-17 08:31:48,322 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 25 states and 29 transitions. [2024-11-17 08:31:48,323 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:48,323 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:48,323 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:48,323 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 1, 1, 1, 1] [2024-11-17 08:31:48,323 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1] [2024-11-17 08:31:48,323 INFO L745 eck$LassoCheckResult]: Stem: 317#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 318#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 322#L44 assume true; 323#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 324#L44 assume true; 325#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 335#L44 assume true; 341#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 340#L44 assume true; 339#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 338#L44 assume true; 334#L44-1 assume !(main_~i~1#1 >= 0); 319#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 320#L30 [2024-11-17 08:31:48,323 INFO L747 eck$LassoCheckResult]: Loop: 320#L30 assume true; 321#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 329#L32 assume true; 333#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 336#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 320#L30 [2024-11-17 08:31:48,324 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:48,324 INFO L85 PathProgramCache]: Analyzing trace with hash -765951960, now seen corresponding path program 2 times [2024-11-17 08:31:48,324 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:48,326 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [966306253] [2024-11-17 08:31:48,326 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:48,326 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:48,352 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:48,440 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:31:48,440 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:48,440 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [966306253] [2024-11-17 08:31:48,441 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [966306253] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:31:48,441 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [502127758] [2024-11-17 08:31:48,441 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-17 08:31:48,441 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:31:48,441 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:48,443 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:31:48,444 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2024-11-17 08:31:48,502 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-17 08:31:48,502 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:31:48,503 INFO L255 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 6 conjuncts are in the unsatisfiable core [2024-11-17 08:31:48,504 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:31:48,523 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:31:48,523 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:31:48,555 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:31:48,555 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [502127758] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:31:48,555 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:31:48,555 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 7 [2024-11-17 08:31:48,556 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1577843795] [2024-11-17 08:31:48,556 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:31:48,556 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:31:48,556 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:48,556 INFO L85 PathProgramCache]: Analyzing trace with hash 58176756, now seen corresponding path program 3 times [2024-11-17 08:31:48,556 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:48,557 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [62481548] [2024-11-17 08:31:48,557 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:48,557 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:48,568 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:48,568 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:48,576 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:48,577 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:48,657 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:48,657 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-11-17 08:31:48,658 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=21, Unknown=0, NotChecked=0, Total=42 [2024-11-17 08:31:48,658 INFO L87 Difference]: Start difference. First operand 25 states and 29 transitions. cyclomatic complexity: 7 Second operand has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 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) [2024-11-17 08:31:48,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:48,700 INFO L93 Difference]: Finished difference Result 45 states and 49 transitions. [2024-11-17 08:31:48,700 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 45 states and 49 transitions. [2024-11-17 08:31:48,701 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:48,702 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 45 states to 44 states and 48 transitions. [2024-11-17 08:31:48,702 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 33 [2024-11-17 08:31:48,702 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33 [2024-11-17 08:31:48,702 INFO L73 IsDeterministic]: Start isDeterministic. Operand 44 states and 48 transitions. [2024-11-17 08:31:48,702 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:48,702 INFO L218 hiAutomatonCegarLoop]: Abstraction has 44 states and 48 transitions. [2024-11-17 08:31:48,702 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states and 48 transitions. [2024-11-17 08:31:48,704 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 27. [2024-11-17 08:31:48,704 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.1481481481481481) internal successors, (31), 26 states have internal predecessors, (31), 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) [2024-11-17 08:31:48,704 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2024-11-17 08:31:48,704 INFO L240 hiAutomatonCegarLoop]: Abstraction has 27 states and 31 transitions. [2024-11-17 08:31:48,705 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-11-17 08:31:48,705 INFO L425 stractBuchiCegarLoop]: Abstraction has 27 states and 31 transitions. [2024-11-17 08:31:48,705 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-11-17 08:31:48,705 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 27 states and 31 transitions. [2024-11-17 08:31:48,706 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:48,706 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:48,706 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:48,707 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 1, 1, 1, 1] [2024-11-17 08:31:48,707 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1] [2024-11-17 08:31:48,708 INFO L745 eck$LassoCheckResult]: Stem: 469#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 470#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 474#L44 assume true; 475#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 476#L44 assume true; 477#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 495#L44 assume true; 494#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 493#L44 assume true; 492#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 491#L44 assume true; 490#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 489#L44 assume true; 486#L44-1 assume !(main_~i~1#1 >= 0); 471#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 472#L30 [2024-11-17 08:31:48,708 INFO L747 eck$LassoCheckResult]: Loop: 472#L30 assume true; 473#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 479#L32 assume true; 485#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 487#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 472#L30 [2024-11-17 08:31:48,708 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:48,708 INFO L85 PathProgramCache]: Analyzing trace with hash -1640360439, now seen corresponding path program 3 times [2024-11-17 08:31:48,708 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:48,708 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [687540725] [2024-11-17 08:31:48,708 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:48,708 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:48,727 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:48,727 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:48,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:48,741 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:48,743 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:48,744 INFO L85 PathProgramCache]: Analyzing trace with hash 58176756, now seen corresponding path program 4 times [2024-11-17 08:31:48,744 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:48,744 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [46800203] [2024-11-17 08:31:48,744 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:48,744 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:48,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:48,751 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:48,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:48,755 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:48,756 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:48,756 INFO L85 PathProgramCache]: Analyzing trace with hash -775805972, now seen corresponding path program 1 times [2024-11-17 08:31:48,759 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:48,759 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1650191710] [2024-11-17 08:31:48,759 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:48,760 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:48,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:48,844 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-17 08:31:48,844 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:48,844 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1650191710] [2024-11-17 08:31:48,845 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1650191710] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-17 08:31:48,845 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-17 08:31:48,845 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-17 08:31:48,845 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1870151861] [2024-11-17 08:31:48,845 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-17 08:31:48,920 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:48,921 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-17 08:31:48,921 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-11-17 08:31:48,921 INFO L87 Difference]: Start difference. First operand 27 states and 31 transitions. cyclomatic complexity: 7 Second operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 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) [2024-11-17 08:31:48,962 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:48,962 INFO L93 Difference]: Finished difference Result 38 states and 45 transitions. [2024-11-17 08:31:48,964 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 38 states and 45 transitions. [2024-11-17 08:31:48,965 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 15 [2024-11-17 08:31:48,965 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 38 states to 38 states and 45 transitions. [2024-11-17 08:31:48,965 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2024-11-17 08:31:48,965 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2024-11-17 08:31:48,965 INFO L73 IsDeterministic]: Start isDeterministic. Operand 38 states and 45 transitions. [2024-11-17 08:31:48,966 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:48,966 INFO L218 hiAutomatonCegarLoop]: Abstraction has 38 states and 45 transitions. [2024-11-17 08:31:48,966 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states and 45 transitions. [2024-11-17 08:31:48,967 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 31. [2024-11-17 08:31:48,969 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 1.1290322580645162) internal successors, (35), 30 states have internal predecessors, (35), 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) [2024-11-17 08:31:48,969 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 35 transitions. [2024-11-17 08:31:48,969 INFO L240 hiAutomatonCegarLoop]: Abstraction has 31 states and 35 transitions. [2024-11-17 08:31:48,970 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-17 08:31:48,971 INFO L425 stractBuchiCegarLoop]: Abstraction has 31 states and 35 transitions. [2024-11-17 08:31:48,972 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-11-17 08:31:48,972 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 35 transitions. [2024-11-17 08:31:48,972 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:48,973 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:48,973 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:48,974 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:31:48,974 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:31:48,974 INFO L745 eck$LassoCheckResult]: Stem: 549#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 550#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 551#L44 assume true; 552#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 553#L44 assume true; 554#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 564#L44 assume true; 576#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 575#L44 assume true; 574#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 573#L44 assume true; 571#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 570#L44 assume true; 563#L44-1 assume !(main_~i~1#1 >= 0); 546#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 547#L30 assume true; 548#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 565#L32 assume true; 566#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 561#L33 [2024-11-17 08:31:48,974 INFO L747 eck$LassoCheckResult]: Loop: 561#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 555#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 556#L32 assume true; 562#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 561#L33 [2024-11-17 08:31:48,975 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:48,975 INFO L85 PathProgramCache]: Analyzing trace with hash 667710663, now seen corresponding path program 1 times [2024-11-17 08:31:48,975 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:48,975 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [972715112] [2024-11-17 08:31:48,978 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:48,979 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:48,999 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:49,002 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:49,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:49,017 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:49,019 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:49,020 INFO L85 PathProgramCache]: Analyzing trace with hash 1507647, now seen corresponding path program 1 times [2024-11-17 08:31:49,020 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:49,020 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1978434334] [2024-11-17 08:31:49,020 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:49,020 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:49,024 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:49,024 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:49,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:49,028 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:49,029 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:49,030 INFO L85 PathProgramCache]: Analyzing trace with hash -814767355, now seen corresponding path program 1 times [2024-11-17 08:31:49,030 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:49,030 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1132857246] [2024-11-17 08:31:49,030 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:49,030 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:49,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:49,440 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 2 proven. 10 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2024-11-17 08:31:49,440 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:49,440 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1132857246] [2024-11-17 08:31:49,440 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1132857246] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:31:49,441 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1951017] [2024-11-17 08:31:49,441 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:49,441 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:31:49,441 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:49,444 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:31:49,445 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2024-11-17 08:31:49,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:49,514 INFO L255 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 13 conjuncts are in the unsatisfiable core [2024-11-17 08:31:49,515 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:31:49,696 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-11-17 08:31:49,697 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 29 treesize of output 13 [2024-11-17 08:31:49,711 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-17 08:31:49,712 INFO L307 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-11-17 08:31:49,712 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1951017] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-17 08:31:49,712 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-11-17 08:31:49,712 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 10 [2024-11-17 08:31:49,712 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [155443183] [2024-11-17 08:31:49,712 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-17 08:31:49,785 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:49,786 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-11-17 08:31:49,786 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=79, Unknown=0, NotChecked=0, Total=110 [2024-11-17 08:31:49,787 INFO L87 Difference]: Start difference. First operand 31 states and 35 transitions. cyclomatic complexity: 7 Second operand has 6 states, 6 states have (on average 2.3333333333333335) internal successors, (14), 5 states have internal predecessors, (14), 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) [2024-11-17 08:31:49,843 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:49,843 INFO L93 Difference]: Finished difference Result 38 states and 44 transitions. [2024-11-17 08:31:49,843 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 38 states and 44 transitions. [2024-11-17 08:31:49,844 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 15 [2024-11-17 08:31:49,844 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 38 states to 38 states and 44 transitions. [2024-11-17 08:31:49,845 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2024-11-17 08:31:49,845 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2024-11-17 08:31:49,845 INFO L73 IsDeterministic]: Start isDeterministic. Operand 38 states and 44 transitions. [2024-11-17 08:31:49,845 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:49,845 INFO L218 hiAutomatonCegarLoop]: Abstraction has 38 states and 44 transitions. [2024-11-17 08:31:49,845 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states and 44 transitions. [2024-11-17 08:31:49,847 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 32. [2024-11-17 08:31:49,847 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 1.125) internal successors, (36), 31 states have internal predecessors, (36), 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) [2024-11-17 08:31:49,848 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 36 transitions. [2024-11-17 08:31:49,848 INFO L240 hiAutomatonCegarLoop]: Abstraction has 32 states and 36 transitions. [2024-11-17 08:31:49,848 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-17 08:31:49,849 INFO L425 stractBuchiCegarLoop]: Abstraction has 32 states and 36 transitions. [2024-11-17 08:31:49,849 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-11-17 08:31:49,849 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 32 states and 36 transitions. [2024-11-17 08:31:49,849 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:49,849 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:49,849 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:49,850 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:31:49,850 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:31:49,850 INFO L745 eck$LassoCheckResult]: Stem: 701#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 702#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 706#L44 assume true; 707#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 708#L44 assume true; 709#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 719#L44 assume true; 731#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 730#L44 assume true; 729#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 728#L44 assume true; 726#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 725#L44 assume true; 718#L44-1 assume !(main_~i~1#1 >= 0); 703#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 704#L30 assume true; 705#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 720#L32 assume true; 721#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 716#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 710#L32-1 [2024-11-17 08:31:49,850 INFO L747 eck$LassoCheckResult]: Loop: 710#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 711#L32 assume true; 717#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 732#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 710#L32-1 [2024-11-17 08:31:49,851 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:49,851 INFO L85 PathProgramCache]: Analyzing trace with hash -775805907, now seen corresponding path program 1 times [2024-11-17 08:31:49,851 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:49,851 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [864038358] [2024-11-17 08:31:49,851 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:49,852 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:49,864 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:49,865 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:49,875 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:49,882 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:49,883 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:49,883 INFO L85 PathProgramCache]: Analyzing trace with hash 1484547, now seen corresponding path program 2 times [2024-11-17 08:31:49,883 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:49,884 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1246831601] [2024-11-17 08:31:49,884 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:49,884 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:49,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:49,894 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:49,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:49,896 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:49,897 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:49,897 INFO L85 PathProgramCache]: Analyzing trace with hash 512939311, now seen corresponding path program 1 times [2024-11-17 08:31:49,900 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:49,900 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [839069305] [2024-11-17 08:31:49,900 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:49,900 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:49,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:50,181 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-17 08:31:50,182 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:50,182 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [839069305] [2024-11-17 08:31:50,182 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [839069305] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:31:50,182 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [913707419] [2024-11-17 08:31:50,182 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:50,182 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:31:50,182 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:50,184 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:31:50,186 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2024-11-17 08:31:50,253 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:50,254 INFO L255 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 16 conjuncts are in the unsatisfiable core [2024-11-17 08:31:50,255 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:31:50,569 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-11-17 08:31:50,570 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 44 treesize of output 32 [2024-11-17 08:31:50,629 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-17 08:31:50,629 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:31:50,983 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-17 08:31:50,983 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [913707419] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:31:50,983 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:31:50,984 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 21 [2024-11-17 08:31:50,984 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1117115745] [2024-11-17 08:31:50,984 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:31:51,045 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:51,046 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2024-11-17 08:31:51,046 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=80, Invalid=426, Unknown=0, NotChecked=0, Total=506 [2024-11-17 08:31:51,047 INFO L87 Difference]: Start difference. First operand 32 states and 36 transitions. cyclomatic complexity: 7 Second operand has 23 states, 22 states have (on average 2.0454545454545454) internal successors, (45), 22 states have internal predecessors, (45), 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) [2024-11-17 08:31:51,351 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:51,351 INFO L93 Difference]: Finished difference Result 44 states and 51 transitions. [2024-11-17 08:31:51,351 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 44 states and 51 transitions. [2024-11-17 08:31:51,352 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 17 [2024-11-17 08:31:51,353 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 44 states to 44 states and 51 transitions. [2024-11-17 08:31:51,353 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 34 [2024-11-17 08:31:51,353 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 34 [2024-11-17 08:31:51,353 INFO L73 IsDeterministic]: Start isDeterministic. Operand 44 states and 51 transitions. [2024-11-17 08:31:51,353 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:51,353 INFO L218 hiAutomatonCegarLoop]: Abstraction has 44 states and 51 transitions. [2024-11-17 08:31:51,353 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states and 51 transitions. [2024-11-17 08:31:51,355 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 36. [2024-11-17 08:31:51,356 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 36 states have (on average 1.1388888888888888) internal successors, (41), 35 states have internal predecessors, (41), 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) [2024-11-17 08:31:51,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 41 transitions. [2024-11-17 08:31:51,356 INFO L240 hiAutomatonCegarLoop]: Abstraction has 36 states and 41 transitions. [2024-11-17 08:31:51,357 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2024-11-17 08:31:51,357 INFO L425 stractBuchiCegarLoop]: Abstraction has 36 states and 41 transitions. [2024-11-17 08:31:51,357 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-11-17 08:31:51,357 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 36 states and 41 transitions. [2024-11-17 08:31:51,358 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:51,358 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:51,358 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:51,358 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:31:51,359 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1] [2024-11-17 08:31:51,359 INFO L745 eck$LassoCheckResult]: Stem: 959#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 960#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 964#L44 assume true; 965#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 966#L44 assume true; 967#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 977#L44 assume true; 990#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 989#L44 assume true; 988#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 987#L44 assume true; 985#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 984#L44 assume true; 976#L44-1 assume !(main_~i~1#1 >= 0); 961#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 962#L30 assume true; 963#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 978#L32 assume true; 979#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 980#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 994#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 993#L32 assume true; 992#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 982#L34 [2024-11-17 08:31:51,359 INFO L747 eck$LassoCheckResult]: Loop: 982#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 983#L30 assume true; 986#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 969#L32 assume true; 975#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 982#L34 [2024-11-17 08:31:51,360 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:51,360 INFO L85 PathProgramCache]: Analyzing trace with hash -814737566, now seen corresponding path program 1 times [2024-11-17 08:31:51,360 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:51,360 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [308119448] [2024-11-17 08:31:51,360 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:51,360 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:51,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:51,426 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-17 08:31:51,426 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:51,426 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [308119448] [2024-11-17 08:31:51,426 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [308119448] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:31:51,426 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [380401714] [2024-11-17 08:31:51,427 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:51,427 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:31:51,427 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:51,429 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:31:51,431 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2024-11-17 08:31:51,496 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:51,498 INFO L255 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-17 08:31:51,499 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:31:51,572 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-17 08:31:51,572 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:31:51,633 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-17 08:31:51,634 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [380401714] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:31:51,634 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:31:51,634 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 11 [2024-11-17 08:31:51,634 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [819882855] [2024-11-17 08:31:51,634 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:31:51,635 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:31:51,635 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:51,635 INFO L85 PathProgramCache]: Analyzing trace with hash 45282156, now seen corresponding path program 5 times [2024-11-17 08:31:51,635 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:51,635 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [702038632] [2024-11-17 08:31:51,635 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:51,635 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:51,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:51,640 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:51,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:51,644 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:51,719 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:51,720 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2024-11-17 08:31:51,720 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=107, Unknown=0, NotChecked=0, Total=156 [2024-11-17 08:31:51,720 INFO L87 Difference]: Start difference. First operand 36 states and 41 transitions. cyclomatic complexity: 8 Second operand has 13 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 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) [2024-11-17 08:31:51,852 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:51,852 INFO L93 Difference]: Finished difference Result 61 states and 71 transitions. [2024-11-17 08:31:51,852 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 61 states and 71 transitions. [2024-11-17 08:31:51,853 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 19 [2024-11-17 08:31:51,854 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 61 states to 61 states and 71 transitions. [2024-11-17 08:31:51,854 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 51 [2024-11-17 08:31:51,855 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 51 [2024-11-17 08:31:51,855 INFO L73 IsDeterministic]: Start isDeterministic. Operand 61 states and 71 transitions. [2024-11-17 08:31:51,855 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:51,855 INFO L218 hiAutomatonCegarLoop]: Abstraction has 61 states and 71 transitions. [2024-11-17 08:31:51,855 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states and 71 transitions. [2024-11-17 08:31:51,861 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 56. [2024-11-17 08:31:51,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 56 states have (on average 1.1428571428571428) internal successors, (64), 55 states have internal predecessors, (64), 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) [2024-11-17 08:31:51,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 64 transitions. [2024-11-17 08:31:51,862 INFO L240 hiAutomatonCegarLoop]: Abstraction has 56 states and 64 transitions. [2024-11-17 08:31:51,863 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2024-11-17 08:31:51,864 INFO L425 stractBuchiCegarLoop]: Abstraction has 56 states and 64 transitions. [2024-11-17 08:31:51,864 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-11-17 08:31:51,864 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 56 states and 64 transitions. [2024-11-17 08:31:51,865 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 15 [2024-11-17 08:31:51,865 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:51,865 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:51,866 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1] [2024-11-17 08:31:51,867 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:31:51,868 INFO L745 eck$LassoCheckResult]: Stem: 1223#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 1224#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 1225#L44 assume true; 1226#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1227#L44 assume true; 1228#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1256#L44 assume true; 1254#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1253#L44 assume true; 1250#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1248#L44 assume true; 1244#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1243#L44 assume true; 1238#L44-1 assume !(main_~i~1#1 >= 0); 1220#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 1221#L30 assume true; 1222#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1239#L32 assume true; 1275#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1274#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1229#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1230#L32 assume true; 1237#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1235#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1236#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1273#L32 assume true; 1272#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1271#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1270#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1269#L32 assume true; 1268#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1262#L33 [2024-11-17 08:31:51,868 INFO L747 eck$LassoCheckResult]: Loop: 1262#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 1266#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1264#L32 assume true; 1261#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1262#L33 [2024-11-17 08:31:51,868 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:51,868 INFO L85 PathProgramCache]: Analyzing trace with hash 1911609630, now seen corresponding path program 1 times [2024-11-17 08:31:51,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:51,868 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1675267819] [2024-11-17 08:31:51,869 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:51,869 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:51,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:51,887 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:51,896 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:51,900 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:51,900 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:51,900 INFO L85 PathProgramCache]: Analyzing trace with hash 1507647, now seen corresponding path program 3 times [2024-11-17 08:31:51,901 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:51,901 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [737723402] [2024-11-17 08:31:51,901 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:51,901 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:51,904 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:51,904 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:51,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:51,907 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:51,907 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:51,907 INFO L85 PathProgramCache]: Analyzing trace with hash -309591076, now seen corresponding path program 2 times [2024-11-17 08:31:51,907 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:51,907 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1079121092] [2024-11-17 08:31:51,907 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:51,908 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:51,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:52,015 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 32 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2024-11-17 08:31:52,016 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:52,016 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1079121092] [2024-11-17 08:31:52,016 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1079121092] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-17 08:31:52,016 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-17 08:31:52,016 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2024-11-17 08:31:52,016 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [102015804] [2024-11-17 08:31:52,017 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-17 08:31:52,091 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:52,091 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2024-11-17 08:31:52,092 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2024-11-17 08:31:52,092 INFO L87 Difference]: Start difference. First operand 56 states and 64 transitions. cyclomatic complexity: 12 Second operand has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 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) [2024-11-17 08:31:52,170 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:52,170 INFO L93 Difference]: Finished difference Result 56 states and 63 transitions. [2024-11-17 08:31:52,170 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 56 states and 63 transitions. [2024-11-17 08:31:52,171 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:52,171 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 56 states to 56 states and 63 transitions. [2024-11-17 08:31:52,171 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 46 [2024-11-17 08:31:52,171 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 46 [2024-11-17 08:31:52,172 INFO L73 IsDeterministic]: Start isDeterministic. Operand 56 states and 63 transitions. [2024-11-17 08:31:52,172 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:52,172 INFO L218 hiAutomatonCegarLoop]: Abstraction has 56 states and 63 transitions. [2024-11-17 08:31:52,172 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states and 63 transitions. [2024-11-17 08:31:52,174 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 56. [2024-11-17 08:31:52,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 56 states have (on average 1.125) internal successors, (63), 55 states have internal predecessors, (63), 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) [2024-11-17 08:31:52,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 63 transitions. [2024-11-17 08:31:52,175 INFO L240 hiAutomatonCegarLoop]: Abstraction has 56 states and 63 transitions. [2024-11-17 08:31:52,175 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-11-17 08:31:52,176 INFO L425 stractBuchiCegarLoop]: Abstraction has 56 states and 63 transitions. [2024-11-17 08:31:52,176 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-11-17 08:31:52,176 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 56 states and 63 transitions. [2024-11-17 08:31:52,176 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:52,176 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:52,176 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:52,177 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 6, 5, 5, 5, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-17 08:31:52,177 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:31:52,178 INFO L745 eck$LassoCheckResult]: Stem: 1356#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 1357#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 1361#L44 assume true; 1362#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1363#L44 assume true; 1364#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1375#L44 assume true; 1392#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1390#L44 assume true; 1386#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1384#L44 assume true; 1380#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1379#L44 assume true; 1374#L44-1 assume !(main_~i~1#1 >= 0); 1358#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 1359#L30 assume true; 1360#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1372#L32 assume true; 1373#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1371#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1365#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1366#L32 assume true; 1411#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1410#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1408#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1406#L32 assume true; 1404#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1402#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1400#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1398#L32 assume true; 1396#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1395#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1393#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1391#L32 assume true; 1387#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 1377#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 1378#L30 assume true; 1409#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1407#L32 assume true; 1405#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1403#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1401#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1399#L32 assume true; 1397#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1389#L33 [2024-11-17 08:31:52,178 INFO L747 eck$LassoCheckResult]: Loop: 1389#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 1394#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1382#L32 assume true; 1388#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1389#L33 [2024-11-17 08:31:52,178 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:52,178 INFO L85 PathProgramCache]: Analyzing trace with hash 757346643, now seen corresponding path program 1 times [2024-11-17 08:31:52,178 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:52,178 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [663588505] [2024-11-17 08:31:52,179 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:52,179 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:52,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:52,197 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:52,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:52,225 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:52,226 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:52,226 INFO L85 PathProgramCache]: Analyzing trace with hash 1507647, now seen corresponding path program 4 times [2024-11-17 08:31:52,226 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:52,226 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [51761599] [2024-11-17 08:31:52,226 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:52,226 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:52,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:52,229 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:52,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:52,232 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:52,232 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:52,232 INFO L85 PathProgramCache]: Analyzing trace with hash -1304544879, now seen corresponding path program 1 times [2024-11-17 08:31:52,232 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:52,232 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [295945930] [2024-11-17 08:31:52,232 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:52,232 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:52,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:52,853 INFO L134 CoverageAnalysis]: Checked inductivity of 118 backedges. 19 proven. 37 refuted. 0 times theorem prover too weak. 62 trivial. 0 not checked. [2024-11-17 08:31:52,853 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:52,853 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [295945930] [2024-11-17 08:31:52,854 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [295945930] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:31:52,854 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [571695046] [2024-11-17 08:31:52,854 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:52,854 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:31:52,854 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:52,855 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:31:52,857 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2024-11-17 08:31:52,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:52,936 INFO L255 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 26 conjuncts are in the unsatisfiable core [2024-11-17 08:31:52,938 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:31:53,319 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:31:53,322 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:31:53,333 INFO L349 Elim1Store]: treesize reduction 19, result has 36.7 percent of original size [2024-11-17 08:31:53,334 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 5 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 4 case distinctions, treesize of input 43 treesize of output 32 [2024-11-17 08:31:53,481 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-11-17 08:31:53,481 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 29 treesize of output 13 [2024-11-17 08:31:53,501 INFO L134 CoverageAnalysis]: Checked inductivity of 118 backedges. 19 proven. 61 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2024-11-17 08:31:53,501 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:31:53,905 INFO L134 CoverageAnalysis]: Checked inductivity of 118 backedges. 19 proven. 37 refuted. 0 times theorem prover too weak. 62 trivial. 0 not checked. [2024-11-17 08:31:53,905 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [571695046] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:31:53,905 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:31:53,905 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 8] total 26 [2024-11-17 08:31:53,905 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [605592661] [2024-11-17 08:31:53,905 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:31:53,972 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:53,972 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2024-11-17 08:31:53,973 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=92, Invalid=610, Unknown=0, NotChecked=0, Total=702 [2024-11-17 08:31:53,973 INFO L87 Difference]: Start difference. First operand 56 states and 63 transitions. cyclomatic complexity: 10 Second operand has 27 states, 27 states have (on average 2.962962962962963) internal successors, (80), 26 states have internal predecessors, (80), 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) [2024-11-17 08:31:54,632 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:54,633 INFO L93 Difference]: Finished difference Result 78 states and 86 transitions. [2024-11-17 08:31:54,633 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 78 states and 86 transitions. [2024-11-17 08:31:54,634 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 17 [2024-11-17 08:31:54,634 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 78 states to 78 states and 86 transitions. [2024-11-17 08:31:54,635 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 68 [2024-11-17 08:31:54,635 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 68 [2024-11-17 08:31:54,635 INFO L73 IsDeterministic]: Start isDeterministic. Operand 78 states and 86 transitions. [2024-11-17 08:31:54,635 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:54,635 INFO L218 hiAutomatonCegarLoop]: Abstraction has 78 states and 86 transitions. [2024-11-17 08:31:54,636 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states and 86 transitions. [2024-11-17 08:31:54,638 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 69. [2024-11-17 08:31:54,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 69 states, 69 states have (on average 1.0869565217391304) internal successors, (75), 68 states have internal predecessors, (75), 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) [2024-11-17 08:31:54,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 75 transitions. [2024-11-17 08:31:54,639 INFO L240 hiAutomatonCegarLoop]: Abstraction has 69 states and 75 transitions. [2024-11-17 08:31:54,641 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-11-17 08:31:54,642 INFO L425 stractBuchiCegarLoop]: Abstraction has 69 states and 75 transitions. [2024-11-17 08:31:54,643 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-11-17 08:31:54,643 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 69 states and 75 transitions. [2024-11-17 08:31:54,643 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:54,644 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:54,644 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:54,644 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 6, 5, 5, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:31:54,646 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:31:54,646 INFO L745 eck$LassoCheckResult]: Stem: 1840#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 1841#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 1844#L44 assume true; 1845#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1846#L44 assume true; 1847#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1858#L44 assume true; 1873#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1872#L44 assume true; 1871#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1869#L44 assume true; 1865#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 1864#L44 assume true; 1857#L44-1 assume !(main_~i~1#1 >= 0); 1842#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 1843#L30 assume true; 1894#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1893#L32 assume true; 1892#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1891#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1890#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1889#L32 assume true; 1888#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1887#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1886#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1885#L32 assume true; 1884#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1883#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1882#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1881#L32 assume true; 1880#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1878#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 1879#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1905#L32 assume true; 1904#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 1903#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 1902#L30 assume true; 1901#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 1900#L32 assume true; 1898#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1895#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 1896#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1906#L32 assume true; 1860#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1861#L33 [2024-11-17 08:31:54,646 INFO L747 eck$LassoCheckResult]: Loop: 1861#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 1855#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 1867#L32 assume true; 1875#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 1861#L33 [2024-11-17 08:31:54,647 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:54,647 INFO L85 PathProgramCache]: Analyzing trace with hash 1050749650, now seen corresponding path program 2 times [2024-11-17 08:31:54,647 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:54,647 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1380634819] [2024-11-17 08:31:54,649 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:54,650 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:54,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:55,153 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 36 proven. 21 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2024-11-17 08:31:55,153 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:55,153 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1380634819] [2024-11-17 08:31:55,154 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1380634819] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:31:55,154 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1955305014] [2024-11-17 08:31:55,155 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-17 08:31:55,155 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:31:55,156 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:55,157 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:31:55,159 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2024-11-17 08:31:55,248 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-17 08:31:55,248 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:31:55,250 INFO L255 TraceCheckSpWp]: Trace formula consists of 234 conjuncts, 20 conjuncts are in the unsatisfiable core [2024-11-17 08:31:55,252 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:31:55,609 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-11-17 08:31:55,609 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 44 treesize of output 32 [2024-11-17 08:31:55,645 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 36 proven. 21 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2024-11-17 08:31:55,645 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:31:56,063 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 36 proven. 21 refuted. 0 times theorem prover too weak. 37 trivial. 0 not checked. [2024-11-17 08:31:56,063 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1955305014] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:31:56,063 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:31:56,063 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 28 [2024-11-17 08:31:56,063 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [631685158] [2024-11-17 08:31:56,063 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:31:56,064 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:31:56,064 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:56,064 INFO L85 PathProgramCache]: Analyzing trace with hash 1507647, now seen corresponding path program 5 times [2024-11-17 08:31:56,064 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:56,064 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1179908692] [2024-11-17 08:31:56,065 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:56,065 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:56,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:56,069 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:56,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:56,071 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:56,141 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:31:56,142 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2024-11-17 08:31:56,142 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=95, Invalid=717, Unknown=0, NotChecked=0, Total=812 [2024-11-17 08:31:56,143 INFO L87 Difference]: Start difference. First operand 69 states and 75 transitions. cyclomatic complexity: 9 Second operand has 29 states, 29 states have (on average 2.6551724137931036) internal successors, (77), 28 states have internal predecessors, (77), 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) [2024-11-17 08:31:56,509 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:31:56,510 INFO L93 Difference]: Finished difference Result 64 states and 70 transitions. [2024-11-17 08:31:56,510 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 64 states and 70 transitions. [2024-11-17 08:31:56,510 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 17 [2024-11-17 08:31:56,511 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 64 states to 64 states and 70 transitions. [2024-11-17 08:31:56,511 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 54 [2024-11-17 08:31:56,511 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 54 [2024-11-17 08:31:56,511 INFO L73 IsDeterministic]: Start isDeterministic. Operand 64 states and 70 transitions. [2024-11-17 08:31:56,511 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:31:56,511 INFO L218 hiAutomatonCegarLoop]: Abstraction has 64 states and 70 transitions. [2024-11-17 08:31:56,511 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states and 70 transitions. [2024-11-17 08:31:56,513 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 57. [2024-11-17 08:31:56,513 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 57 states have (on average 1.0701754385964912) internal successors, (61), 56 states have internal predecessors, (61), 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) [2024-11-17 08:31:56,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 61 transitions. [2024-11-17 08:31:56,514 INFO L240 hiAutomatonCegarLoop]: Abstraction has 57 states and 61 transitions. [2024-11-17 08:31:56,515 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2024-11-17 08:31:56,516 INFO L425 stractBuchiCegarLoop]: Abstraction has 57 states and 61 transitions. [2024-11-17 08:31:56,516 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-11-17 08:31:56,516 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 57 states and 61 transitions. [2024-11-17 08:31:56,516 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-17 08:31:56,516 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:31:56,516 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:31:56,518 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 6, 6, 5, 5, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-17 08:31:56,518 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:31:56,518 INFO L745 eck$LassoCheckResult]: Stem: 2283#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 2284#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 2289#L44 assume true; 2290#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2291#L44 assume true; 2292#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2303#L44 assume true; 2318#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2317#L44 assume true; 2314#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2312#L44 assume true; 2308#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2307#L44 assume true; 2302#L44-1 assume !(main_~i~1#1 >= 0); 2285#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 2286#L30 assume true; 2339#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 2338#L32 assume true; 2336#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2334#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2333#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2332#L32 assume true; 2331#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2330#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2329#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2328#L32 assume true; 2327#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2326#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2325#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2324#L32 assume true; 2323#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2322#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2321#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2320#L32 assume true; 2319#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 2306#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 2287#L30 assume true; 2288#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 2304#L32 assume true; 2337#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2335#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2293#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2294#L32 assume true; 2301#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2299#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2300#L32-1 [2024-11-17 08:31:56,518 INFO L747 eck$LassoCheckResult]: Loop: 2300#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2310#L32 assume true; 2315#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2316#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 2300#L32-1 [2024-11-17 08:31:56,518 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:56,518 INFO L85 PathProgramCache]: Analyzing trace with hash 2002909473, now seen corresponding path program 2 times [2024-11-17 08:31:56,519 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:56,519 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1816663651] [2024-11-17 08:31:56,519 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:56,519 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:56,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:56,541 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:56,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:56,571 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:56,574 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:56,575 INFO L85 PathProgramCache]: Analyzing trace with hash 1484547, now seen corresponding path program 6 times [2024-11-17 08:31:56,575 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:56,575 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1688631305] [2024-11-17 08:31:56,575 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:56,575 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:56,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:56,578 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:31:56,584 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:31:56,586 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:31:56,586 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:31:56,590 INFO L85 PathProgramCache]: Analyzing trace with hash -1785262045, now seen corresponding path program 3 times [2024-11-17 08:31:56,590 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:31:56,590 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [382829576] [2024-11-17 08:31:56,590 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:31:56,591 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:31:56,622 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:31:57,220 INFO L134 CoverageAnalysis]: Checked inductivity of 124 backedges. 0 proven. 62 refuted. 0 times theorem prover too weak. 62 trivial. 0 not checked. [2024-11-17 08:31:57,220 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:31:57,220 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [382829576] [2024-11-17 08:31:57,220 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [382829576] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:31:57,220 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [12259572] [2024-11-17 08:31:57,220 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-17 08:31:57,220 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:31:57,220 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:31:57,222 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:31:57,224 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2024-11-17 08:31:57,302 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2024-11-17 08:31:57,302 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:31:57,308 INFO L255 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 35 conjuncts are in the unsatisfiable core [2024-11-17 08:31:57,312 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:31:57,377 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:31:57,378 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 9 [2024-11-17 08:31:58,109 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 4 select indices, 4 select index equivalence classes, 10 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 0 case distinctions, treesize of input 44 treesize of output 41 [2024-11-17 08:31:58,435 INFO L349 Elim1Store]: treesize reduction 30, result has 9.1 percent of original size [2024-11-17 08:31:58,436 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 5 select indices, 5 select index equivalence classes, 6 disjoint index pairs (out of 10 index pairs), introduced 5 new quantified variables, introduced 4 case distinctions, treesize of input 38 treesize of output 19 [2024-11-17 08:31:58,445 INFO L134 CoverageAnalysis]: Checked inductivity of 124 backedges. 6 proven. 54 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2024-11-17 08:31:58,445 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:32:12,805 INFO L134 CoverageAnalysis]: Checked inductivity of 124 backedges. 0 proven. 60 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2024-11-17 08:32:12,805 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [12259572] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:32:12,805 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:32:12,805 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9, 9] total 28 [2024-11-17 08:32:12,806 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [591166303] [2024-11-17 08:32:12,806 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:32:12,959 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:32:12,960 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2024-11-17 08:32:12,960 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=110, Invalid=759, Unknown=1, NotChecked=0, Total=870 [2024-11-17 08:32:12,961 INFO L87 Difference]: Start difference. First operand 57 states and 61 transitions. cyclomatic complexity: 7 Second operand has 30 states, 29 states have (on average 2.689655172413793) internal successors, (78), 29 states have internal predecessors, (78), 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) [2024-11-17 08:32:16,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:32:16,030 INFO L93 Difference]: Finished difference Result 90 states and 102 transitions. [2024-11-17 08:32:16,030 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 90 states and 102 transitions. [2024-11-17 08:32:16,031 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 29 [2024-11-17 08:32:16,031 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 90 states to 90 states and 102 transitions. [2024-11-17 08:32:16,031 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 80 [2024-11-17 08:32:16,032 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 80 [2024-11-17 08:32:16,032 INFO L73 IsDeterministic]: Start isDeterministic. Operand 90 states and 102 transitions. [2024-11-17 08:32:16,032 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:32:16,032 INFO L218 hiAutomatonCegarLoop]: Abstraction has 90 states and 102 transitions. [2024-11-17 08:32:16,033 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states and 102 transitions. [2024-11-17 08:32:16,040 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 70. [2024-11-17 08:32:16,040 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 70 states have (on average 1.1285714285714286) internal successors, (79), 69 states have internal predecessors, (79), 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) [2024-11-17 08:32:16,041 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 79 transitions. [2024-11-17 08:32:16,041 INFO L240 hiAutomatonCegarLoop]: Abstraction has 70 states and 79 transitions. [2024-11-17 08:32:16,043 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2024-11-17 08:32:16,044 INFO L425 stractBuchiCegarLoop]: Abstraction has 70 states and 79 transitions. [2024-11-17 08:32:16,044 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-11-17 08:32:16,044 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 70 states and 79 transitions. [2024-11-17 08:32:16,045 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 19 [2024-11-17 08:32:16,047 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:32:16,047 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:32:16,048 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 6, 5, 5, 5, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-17 08:32:16,048 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:32:16,048 INFO L745 eck$LassoCheckResult]: Stem: 2793#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 2794#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 2797#L44 assume true; 2798#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2799#L44 assume true; 2800#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2822#L44 assume true; 2821#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2820#L44 assume true; 2819#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2818#L44 assume true; 2817#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 2816#L44 assume true; 2810#L44-1 assume !(main_~i~1#1 >= 0); 2795#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 2796#L30 assume true; 2824#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 2844#L32 assume true; 2843#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2842#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2841#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2840#L32 assume true; 2839#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2838#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2837#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2836#L32 assume true; 2835#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2834#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2833#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2832#L32 assume true; 2831#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2830#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2829#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2828#L32 assume true; 2827#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 2825#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 2826#L30 assume true; 2812#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 2813#L32 assume true; 2848#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2851#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2849#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2850#L32 assume true; 2811#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2807#L33 [2024-11-17 08:32:16,048 INFO L747 eck$LassoCheckResult]: Loop: 2807#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 2808#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 2855#L32 assume true; 2856#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 2807#L33 [2024-11-17 08:32:16,048 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:16,048 INFO L85 PathProgramCache]: Analyzing trace with hash 757346643, now seen corresponding path program 3 times [2024-11-17 08:32:16,049 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:16,049 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [233490350] [2024-11-17 08:32:16,049 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:16,049 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:16,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:16,066 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:32:16,086 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:16,093 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:32:16,093 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:16,093 INFO L85 PathProgramCache]: Analyzing trace with hash 1537438, now seen corresponding path program 1 times [2024-11-17 08:32:16,093 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:16,094 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1260384044] [2024-11-17 08:32:16,094 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:16,094 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:16,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:16,099 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:32:16,100 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:16,101 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:32:16,102 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:16,102 INFO L85 PathProgramCache]: Analyzing trace with hash -1304515088, now seen corresponding path program 4 times [2024-11-17 08:32:16,102 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:16,102 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [499273348] [2024-11-17 08:32:16,102 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:16,103 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:16,120 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:16,120 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:32:16,133 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:16,138 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:32:19,495 INFO L204 LassoAnalysis]: Preferences: [2024-11-17 08:32:19,496 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-17 08:32:19,496 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-17 08:32:19,496 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-17 08:32:19,496 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-17 08:32:19,496 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:19,496 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-17 08:32:19,497 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-17 08:32:19,497 INFO L132 ssoRankerPreferences]: Filename of dumped script: eureka_05.i_Iteration14_Lasso [2024-11-17 08:32:19,497 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-17 08:32:19,497 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-17 08:32:19,499 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:19,507 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:19,513 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:19,516 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:19,518 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:20,330 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:20,344 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:20,346 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:20,348 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:20,349 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:20,350 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:20,352 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:20,354 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:20,356 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:32:21,113 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-17 08:32:21,113 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-17 08:32:21,113 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,113 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,115 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,116 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Waiting until timeout for monitored process [2024-11-17 08:32:21,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 [2024-11-17 08:32:21,128 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,128 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,128 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,128 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,129 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,130 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,132 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,142 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,142 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,142 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,143 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,145 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Waiting until timeout for monitored process [2024-11-17 08:32:21,146 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 [2024-11-17 08:32:21,158 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,158 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,158 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,158 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,159 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,159 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,162 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,172 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,172 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,172 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,173 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,174 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Waiting until timeout for monitored process [2024-11-17 08:32:21,175 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 [2024-11-17 08:32:21,185 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,185 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:32:21,185 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,185 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,185 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,186 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:32:21,186 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:32:21,187 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,197 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,197 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,197 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,198 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,199 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Waiting until timeout for monitored process [2024-11-17 08:32:21,201 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 [2024-11-17 08:32:21,214 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,214 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:32:21,214 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,214 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,214 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,216 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:32:21,216 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:32:21,219 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,233 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Ended with exit code 0 [2024-11-17 08:32:21,234 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,234 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,236 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,237 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Waiting until timeout for monitored process [2024-11-17 08:32:21,238 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 [2024-11-17 08:32:21,250 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,250 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,250 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,250 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,252 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,252 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,257 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,270 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,270 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,270 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,272 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,273 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Waiting until timeout for monitored process [2024-11-17 08:32:21,274 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 [2024-11-17 08:32:21,284 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,284 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,284 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,284 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,285 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,285 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,287 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,298 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,298 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,298 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,299 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,300 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Waiting until timeout for monitored process [2024-11-17 08:32:21,301 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 [2024-11-17 08:32:21,311 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,312 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,312 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,312 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,313 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,313 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,316 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,326 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,327 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,327 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,329 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,330 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Waiting until timeout for monitored process [2024-11-17 08:32:21,331 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 [2024-11-17 08:32:21,341 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,341 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,341 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,341 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,343 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,343 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,346 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,356 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,357 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,357 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,358 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,359 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Waiting until timeout for monitored process [2024-11-17 08:32:21,359 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 [2024-11-17 08:32:21,370 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,370 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,370 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,370 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,372 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,372 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,375 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,386 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,386 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,386 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,387 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,388 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Waiting until timeout for monitored process [2024-11-17 08:32:21,389 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 [2024-11-17 08:32:21,398 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,399 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,399 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,399 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,400 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,400 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,405 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,417 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Ended with exit code 0 [2024-11-17 08:32:21,418 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,418 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,420 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,421 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Waiting until timeout for monitored process [2024-11-17 08:32:21,422 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 [2024-11-17 08:32:21,433 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,434 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,434 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,434 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,439 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,439 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,449 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,465 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Ended with exit code 0 [2024-11-17 08:32:21,466 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,466 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,468 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,468 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Waiting until timeout for monitored process [2024-11-17 08:32:21,470 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 [2024-11-17 08:32:21,481 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,481 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,481 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,481 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,483 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,483 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,487 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,502 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,503 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,503 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,505 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,506 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Waiting until timeout for monitored process [2024-11-17 08:32:21,507 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 [2024-11-17 08:32:21,519 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,520 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,520 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,520 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,521 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,521 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,523 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,535 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,535 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,535 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,537 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,538 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Waiting until timeout for monitored process [2024-11-17 08:32:21,539 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 [2024-11-17 08:32:21,549 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,549 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,549 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,549 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,551 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,551 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,553 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,563 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,564 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,564 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,565 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,565 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Waiting until timeout for monitored process [2024-11-17 08:32:21,566 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 [2024-11-17 08:32:21,576 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,576 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,576 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,576 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,578 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,578 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,580 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,590 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,591 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,591 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,592 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,593 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Waiting until timeout for monitored process [2024-11-17 08:32:21,593 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 [2024-11-17 08:32:21,603 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,603 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,603 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,603 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,604 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,604 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,607 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,618 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,618 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,618 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,619 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,620 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Waiting until timeout for monitored process [2024-11-17 08:32:21,620 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 [2024-11-17 08:32:21,630 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,631 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,631 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,631 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,632 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,632 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,634 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,645 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,645 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,645 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,646 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,647 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Waiting until timeout for monitored process [2024-11-17 08:32:21,648 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 [2024-11-17 08:32:21,658 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,658 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,658 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,658 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,659 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,659 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,662 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,673 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,673 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,674 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,675 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,675 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Waiting until timeout for monitored process [2024-11-17 08:32:21,676 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:32:21,685 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,686 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,686 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,686 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,687 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,687 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,689 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:32:21,699 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,700 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,700 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,702 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,702 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Waiting until timeout for monitored process [2024-11-17 08:32:21,704 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 [2024-11-17 08:32:21,714 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:32:21,714 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:32:21,714 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:32:21,714 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:32:21,719 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:32:21,719 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:32:21,732 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-17 08:32:21,773 INFO L443 ModelExtractionUtils]: Simplification made 22 calls to the SMT solver. [2024-11-17 08:32:21,773 INFO L444 ModelExtractionUtils]: 2 out of 22 variables were initially zero. Simplification set additionally 14 variables to zero. [2024-11-17 08:32:21,773 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:32:21,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:21,774 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:32:21,775 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Waiting until timeout for monitored process [2024-11-17 08:32:21,776 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-17 08:32:21,787 INFO L438 nArgumentSynthesizer]: Removed 1 redundant supporting invariants from a total of 2. [2024-11-17 08:32:21,787 INFO L474 LassoAnalysis]: Proved termination. [2024-11-17 08:32:21,787 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_SelectionSort_~i~0#1) = -4*ULTIMATE.start_SelectionSort_~i~0#1 + 13 Supporting invariants [-1*v_rep(select #length ~#array~0.base)_1 + 1*~#array~0.offset + 20 >= 0] [2024-11-17 08:32:21,798 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:21,849 INFO L156 tatePredicateManager]: 15 out of 16 supporting invariants were superfluous and have been removed [2024-11-17 08:32:21,899 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:21,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:21,935 INFO L255 TraceCheckSpWp]: Trace formula consists of 232 conjuncts, 11 conjuncts are in the unsatisfiable core [2024-11-17 08:32:21,937 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:22,006 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:22,007 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 9 [2024-11-17 08:32:22,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:22,870 INFO L255 TraceCheckSpWp]: Trace formula consists of 18 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-17 08:32:22,871 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:22,944 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:32:22,945 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.3 stem predicates 2 loop predicates [2024-11-17 08:32:22,945 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 70 states and 79 transitions. cyclomatic complexity: 14 Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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) [2024-11-17 08:32:23,050 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 70 states and 79 transitions. cyclomatic complexity: 14. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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 82 states and 91 transitions. Complement of second has 8 states. [2024-11-17 08:32:23,051 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 [2024-11-17 08:32:23,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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) [2024-11-17 08:32:23,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 14 transitions. [2024-11-17 08:32:23,052 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 14 transitions. Stem has 44 letters. Loop has 4 letters. [2024-11-17 08:32:23,052 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:32:23,053 INFO L682 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2024-11-17 08:32:23,105 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:23,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:23,142 INFO L255 TraceCheckSpWp]: Trace formula consists of 232 conjuncts, 11 conjuncts are in the unsatisfiable core [2024-11-17 08:32:23,143 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:23,227 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:23,228 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 9 [2024-11-17 08:32:23,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:23,955 INFO L255 TraceCheckSpWp]: Trace formula consists of 18 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-17 08:32:23,955 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:24,012 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:32:24,012 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.3 stem predicates 2 loop predicates [2024-11-17 08:32:24,012 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 70 states and 79 transitions. cyclomatic complexity: 14 Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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) [2024-11-17 08:32:24,097 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 70 states and 79 transitions. cyclomatic complexity: 14. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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 82 states and 91 transitions. Complement of second has 8 states. [2024-11-17 08:32:24,098 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 [2024-11-17 08:32:24,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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) [2024-11-17 08:32:24,098 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 14 transitions. [2024-11-17 08:32:24,098 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 14 transitions. Stem has 44 letters. Loop has 4 letters. [2024-11-17 08:32:24,098 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:32:24,098 INFO L682 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2024-11-17 08:32:24,143 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:24,205 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Forceful destruction successful, exit code 0 [2024-11-17 08:32:24,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:24,207 INFO L255 TraceCheckSpWp]: Trace formula consists of 232 conjuncts, 11 conjuncts are in the unsatisfiable core [2024-11-17 08:32:24,208 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:24,259 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:24,260 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 9 [2024-11-17 08:32:24,794 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:24,795 INFO L255 TraceCheckSpWp]: Trace formula consists of 18 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-17 08:32:24,795 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:24,837 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:32:24,837 INFO L141 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.3 stem predicates 2 loop predicates [2024-11-17 08:32:24,838 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 70 states and 79 transitions. cyclomatic complexity: 14 Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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) [2024-11-17 08:32:24,909 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 70 states and 79 transitions. cyclomatic complexity: 14. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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 97 states and 113 transitions. Complement of second has 7 states. [2024-11-17 08:32:24,909 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 [2024-11-17 08:32:24,910 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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) [2024-11-17 08:32:24,910 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 27 transitions. [2024-11-17 08:32:24,910 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 27 transitions. Stem has 44 letters. Loop has 4 letters. [2024-11-17 08:32:24,910 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:32:24,910 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 27 transitions. Stem has 48 letters. Loop has 4 letters. [2024-11-17 08:32:24,911 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:32:24,911 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 27 transitions. Stem has 44 letters. Loop has 8 letters. [2024-11-17 08:32:24,911 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:32:24,911 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 97 states and 113 transitions. [2024-11-17 08:32:24,913 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 17 [2024-11-17 08:32:24,915 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 97 states to 82 states and 98 transitions. [2024-11-17 08:32:24,915 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 41 [2024-11-17 08:32:24,915 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 57 [2024-11-17 08:32:24,915 INFO L73 IsDeterministic]: Start isDeterministic. Operand 82 states and 98 transitions. [2024-11-17 08:32:24,915 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:32:24,916 INFO L218 hiAutomatonCegarLoop]: Abstraction has 82 states and 98 transitions. [2024-11-17 08:32:24,916 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states and 98 transitions. [2024-11-17 08:32:24,918 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 76. [2024-11-17 08:32:24,918 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 76 states, 76 states have (on average 1.2105263157894737) internal successors, (92), 75 states have internal predecessors, (92), 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) [2024-11-17 08:32:24,919 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 76 states to 76 states and 92 transitions. [2024-11-17 08:32:24,919 INFO L240 hiAutomatonCegarLoop]: Abstraction has 76 states and 92 transitions. [2024-11-17 08:32:24,919 INFO L425 stractBuchiCegarLoop]: Abstraction has 76 states and 92 transitions. [2024-11-17 08:32:24,919 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-11-17 08:32:24,919 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 76 states and 92 transitions. [2024-11-17 08:32:24,920 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 17 [2024-11-17 08:32:24,920 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:32:24,920 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:32:24,921 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 6, 6, 6, 6, 5, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-17 08:32:24,921 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:32:24,921 INFO L745 eck$LassoCheckResult]: Stem: 3680#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 3681#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 3682#L44 assume true; 3683#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3684#L44 assume true; 3685#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3715#L44 assume true; 3714#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3713#L44 assume true; 3712#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3711#L44 assume true; 3710#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 3709#L44 assume true; 3699#L44-1 assume !(main_~i~1#1 >= 0); 3677#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 3678#L30 assume true; 3679#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 3737#L32 assume true; 3736#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3735#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 3734#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 3733#L32 assume true; 3732#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3731#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 3730#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 3729#L32 assume true; 3728#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3727#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 3726#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 3725#L32 assume true; 3724#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3723#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 3722#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 3721#L32 assume true; 3720#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 3705#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 3706#L30 assume true; 3700#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 3701#L32 assume true; 3702#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3694#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 3688#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 3689#L32 assume true; 3698#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 3703#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 3750#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 3749#L32 assume true; 3738#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 3739#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 3716#L30 assume true; 3717#L30-1 assume !(SelectionSort_~lh~0#1 < ~n~0); 3690#SelectionSort_returnLabel#1 assume true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;assume { :end_inline_SelectionSort } true;main_~i~1#1 := 0; 3691#L49 [2024-11-17 08:32:24,921 INFO L747 eck$LassoCheckResult]: Loop: 3691#L49 assume true; 3704#L49-1 assume !!(main_~i~1#1 < 5);call main_#t~mem8#1 := read~int#2(main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_#t~mem8#1 == main_~i~1#1 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; 3692#L15 assume !(0 == __VERIFIER_assert_~cond#1); 3693#L18 assume true;havoc __VERIFIER_assert_~cond#1;havoc __VERIFIER_assert_#in~cond#1;assume { :end_inline___VERIFIER_assert } true;main_#t~post9#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; 3691#L49 [2024-11-17 08:32:24,922 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:24,922 INFO L85 PathProgramCache]: Analyzing trace with hash -163432176, now seen corresponding path program 1 times [2024-11-17 08:32:24,922 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:24,922 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1971747472] [2024-11-17 08:32:24,922 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:24,922 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:24,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:25,088 INFO L134 CoverageAnalysis]: Checked inductivity of 123 backedges. 5 proven. 56 refuted. 0 times theorem prover too weak. 62 trivial. 0 not checked. [2024-11-17 08:32:25,088 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:32:25,088 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1971747472] [2024-11-17 08:32:25,088 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1971747472] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:32:25,088 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1209673930] [2024-11-17 08:32:25,088 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:25,089 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:32:25,089 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:25,090 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:32:25,092 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Waiting until timeout for monitored process [2024-11-17 08:32:25,179 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:25,180 INFO L255 TraceCheckSpWp]: Trace formula consists of 257 conjuncts, 7 conjuncts are in the unsatisfiable core [2024-11-17 08:32:25,181 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:25,576 INFO L134 CoverageAnalysis]: Checked inductivity of 123 backedges. 5 proven. 56 refuted. 0 times theorem prover too weak. 62 trivial. 0 not checked. [2024-11-17 08:32:25,576 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:32:25,811 INFO L134 CoverageAnalysis]: Checked inductivity of 123 backedges. 5 proven. 56 refuted. 0 times theorem prover too weak. 62 trivial. 0 not checked. [2024-11-17 08:32:25,811 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1209673930] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:32:25,811 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:32:25,811 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 13 [2024-11-17 08:32:25,811 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1343228704] [2024-11-17 08:32:25,812 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:32:25,812 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:32:25,812 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:25,812 INFO L85 PathProgramCache]: Analyzing trace with hash 1353369, now seen corresponding path program 1 times [2024-11-17 08:32:25,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:25,812 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1290497925] [2024-11-17 08:32:25,812 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:25,812 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:25,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:25,817 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:32:25,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:25,823 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:32:25,895 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:32:25,895 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-11-17 08:32:25,895 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=130, Unknown=0, NotChecked=0, Total=182 [2024-11-17 08:32:25,896 INFO L87 Difference]: Start difference. First operand 76 states and 92 transitions. cyclomatic complexity: 21 Second operand has 14 states, 14 states have (on average 4.285714285714286) internal successors, (60), 13 states have internal predecessors, (60), 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) [2024-11-17 08:32:26,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:32:26,131 INFO L93 Difference]: Finished difference Result 89 states and 106 transitions. [2024-11-17 08:32:26,131 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 89 states and 106 transitions. [2024-11-17 08:32:26,132 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 17 [2024-11-17 08:32:26,132 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 89 states to 86 states and 103 transitions. [2024-11-17 08:32:26,133 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 55 [2024-11-17 08:32:26,133 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 55 [2024-11-17 08:32:26,133 INFO L73 IsDeterministic]: Start isDeterministic. Operand 86 states and 103 transitions. [2024-11-17 08:32:26,133 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:32:26,133 INFO L218 hiAutomatonCegarLoop]: Abstraction has 86 states and 103 transitions. [2024-11-17 08:32:26,133 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states and 103 transitions. [2024-11-17 08:32:26,135 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 80. [2024-11-17 08:32:26,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 80 states, 80 states have (on average 1.2) internal successors, (96), 79 states have internal predecessors, (96), 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) [2024-11-17 08:32:26,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 80 states to 80 states and 96 transitions. [2024-11-17 08:32:26,136 INFO L240 hiAutomatonCegarLoop]: Abstraction has 80 states and 96 transitions. [2024-11-17 08:32:26,136 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-11-17 08:32:26,137 INFO L425 stractBuchiCegarLoop]: Abstraction has 80 states and 96 transitions. [2024-11-17 08:32:26,137 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-11-17 08:32:26,137 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 80 states and 96 transitions. [2024-11-17 08:32:26,137 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 17 [2024-11-17 08:32:26,137 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:32:26,137 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:32:26,138 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [9, 7, 7, 7, 6, 5, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-17 08:32:26,138 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:32:26,138 INFO L745 eck$LassoCheckResult]: Stem: 4185#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 4186#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 4189#L44 assume true; 4190#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4191#L44 assume true; 4192#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4220#L44 assume true; 4219#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4218#L44 assume true; 4217#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4216#L44 assume true; 4215#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4214#L44 assume true; 4206#L44-1 assume !(main_~i~1#1 >= 0); 4187#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 4188#L30 assume true; 4241#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4240#L32 assume true; 4239#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4238#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4237#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4236#L32 assume true; 4235#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4234#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4233#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4232#L32 assume true; 4231#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4230#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4229#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4228#L32 assume true; 4227#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4226#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4225#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4224#L32 assume true; 4223#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 4211#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 4183#L30 assume true; 4184#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4209#L32 assume true; 4207#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4201#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4202#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4252#L32 assume true; 4250#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4203#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4195#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4196#L32 assume true; 4205#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4208#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4193#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4194#L32 assume true; 4204#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 4222#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 4221#L30 assume true; 4212#L30-1 assume !(SelectionSort_~lh~0#1 < ~n~0); 4197#SelectionSort_returnLabel#1 assume true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;assume { :end_inline_SelectionSort } true;main_~i~1#1 := 0; 4198#L49 [2024-11-17 08:32:26,139 INFO L747 eck$LassoCheckResult]: Loop: 4198#L49 assume true; 4210#L49-1 assume !!(main_~i~1#1 < 5);call main_#t~mem8#1 := read~int#2(main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if main_#t~mem8#1 == main_~i~1#1 then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; 4199#L15 assume !(0 == __VERIFIER_assert_~cond#1); 4200#L18 assume true;havoc __VERIFIER_assert_~cond#1;havoc __VERIFIER_assert_#in~cond#1;assume { :end_inline___VERIFIER_assert } true;main_#t~post9#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; 4198#L49 [2024-11-17 08:32:26,139 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:26,139 INFO L85 PathProgramCache]: Analyzing trace with hash -719796051, now seen corresponding path program 2 times [2024-11-17 08:32:26,139 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:26,139 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1692979141] [2024-11-17 08:32:26,139 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:26,140 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:26,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:26,279 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 0 proven. 71 refuted. 0 times theorem prover too weak. 80 trivial. 0 not checked. [2024-11-17 08:32:26,280 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:32:26,280 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1692979141] [2024-11-17 08:32:26,280 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1692979141] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:32:26,280 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [339654973] [2024-11-17 08:32:26,280 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-17 08:32:26,280 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:32:26,281 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:26,282 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:32:26,284 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Waiting until timeout for monitored process [2024-11-17 08:32:26,378 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-17 08:32:26,378 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:32:26,381 INFO L255 TraceCheckSpWp]: Trace formula consists of 272 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-17 08:32:26,382 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:26,747 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 0 proven. 71 refuted. 0 times theorem prover too weak. 80 trivial. 0 not checked. [2024-11-17 08:32:26,747 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:32:26,987 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 0 proven. 71 refuted. 0 times theorem prover too weak. 80 trivial. 0 not checked. [2024-11-17 08:32:26,987 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [339654973] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:32:26,988 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:32:26,988 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 11 [2024-11-17 08:32:26,988 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1449671652] [2024-11-17 08:32:26,988 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:32:26,988 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:32:26,988 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:26,988 INFO L85 PathProgramCache]: Analyzing trace with hash 1353369, now seen corresponding path program 2 times [2024-11-17 08:32:26,988 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:26,988 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1030357889] [2024-11-17 08:32:26,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:26,989 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:26,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:26,992 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:32:26,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:26,994 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:32:27,056 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:32:27,057 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2024-11-17 08:32:27,057 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=75, Unknown=0, NotChecked=0, Total=132 [2024-11-17 08:32:27,057 INFO L87 Difference]: Start difference. First operand 80 states and 96 transitions. cyclomatic complexity: 21 Second operand has 12 states, 12 states have (on average 5.583333333333333) internal successors, (67), 11 states have internal predecessors, (67), 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) [2024-11-17 08:32:27,151 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:32:27,151 INFO L93 Difference]: Finished difference Result 103 states and 128 transitions. [2024-11-17 08:32:27,151 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 103 states and 128 transitions. [2024-11-17 08:32:27,152 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 17 [2024-11-17 08:32:27,153 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 103 states to 103 states and 128 transitions. [2024-11-17 08:32:27,153 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 69 [2024-11-17 08:32:27,153 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 69 [2024-11-17 08:32:27,153 INFO L73 IsDeterministic]: Start isDeterministic. Operand 103 states and 128 transitions. [2024-11-17 08:32:27,153 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:32:27,153 INFO L218 hiAutomatonCegarLoop]: Abstraction has 103 states and 128 transitions. [2024-11-17 08:32:27,153 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states and 128 transitions. [2024-11-17 08:32:27,155 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 103. [2024-11-17 08:32:27,155 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 103 states, 103 states have (on average 1.2427184466019416) internal successors, (128), 102 states have internal predecessors, (128), 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) [2024-11-17 08:32:27,156 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 128 transitions. [2024-11-17 08:32:27,157 INFO L240 hiAutomatonCegarLoop]: Abstraction has 103 states and 128 transitions. [2024-11-17 08:32:27,157 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-11-17 08:32:27,157 INFO L425 stractBuchiCegarLoop]: Abstraction has 103 states and 128 transitions. [2024-11-17 08:32:27,157 INFO L332 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2024-11-17 08:32:27,158 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 103 states and 128 transitions. [2024-11-17 08:32:27,158 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 17 [2024-11-17 08:32:27,158 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:32:27,158 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:32:27,159 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 7, 7, 7, 6, 5, 5, 5, 4, 4, 1, 1, 1, 1] [2024-11-17 08:32:27,159 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1, 1] [2024-11-17 08:32:27,159 INFO L745 eck$LassoCheckResult]: Stem: 4715#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 4716#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 4720#L44 assume true; 4721#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4722#L44 assume true; 4723#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4755#L44 assume true; 4754#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4753#L44 assume true; 4752#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4751#L44 assume true; 4750#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 4749#L44 assume true; 4738#L44-1 assume !(main_~i~1#1 >= 0); 4717#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 4718#L30 assume true; 4719#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4739#L32 assume true; 4817#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4816#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4724#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4725#L32 assume true; 4735#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4732#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4733#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4815#L32 assume true; 4814#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4813#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4812#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4811#L32 assume true; 4809#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4807#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4805#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4803#L32 assume true; 4782#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 4742#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 4743#L30 assume true; 4810#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4808#L32 assume true; 4806#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4804#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4802#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4801#L32 assume true; 4800#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4734#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4726#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4727#L32 assume true; 4799#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 4797#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 4796#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 4795#L32 assume true; 4794#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 4792#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 4790#L30 assume true; 4784#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4785#L32 assume true; 4798#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 4778#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 4775#L30 assume true; 4770#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4771#L32 assume true; 4777#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 4764#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 4763#L30 assume true; 4758#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4745#L32 [2024-11-17 08:32:27,160 INFO L747 eck$LassoCheckResult]: Loop: 4745#L32 assume true; 4762#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 4747#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 4746#L30 assume true; 4744#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 4745#L32 [2024-11-17 08:32:27,160 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:27,160 INFO L85 PathProgramCache]: Analyzing trace with hash -593842843, now seen corresponding path program 5 times [2024-11-17 08:32:27,160 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:27,160 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1865309684] [2024-11-17 08:32:27,160 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:27,161 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:27,195 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:27,333 INFO L134 CoverageAnalysis]: Checked inductivity of 208 backedges. 36 proven. 89 refuted. 0 times theorem prover too weak. 83 trivial. 0 not checked. [2024-11-17 08:32:27,333 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:32:27,333 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1865309684] [2024-11-17 08:32:27,333 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1865309684] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:32:27,333 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1398632490] [2024-11-17 08:32:27,334 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-17 08:32:27,334 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:32:27,334 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:27,336 INFO L229 MonitoredProcess]: Starting monitored process 46 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:32:27,337 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (46)] Waiting until timeout for monitored process [2024-11-17 08:32:27,448 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 9 check-sat command(s) [2024-11-17 08:32:27,448 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:32:27,449 INFO L255 TraceCheckSpWp]: Trace formula consists of 227 conjuncts, 7 conjuncts are in the unsatisfiable core [2024-11-17 08:32:27,450 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:27,629 INFO L134 CoverageAnalysis]: Checked inductivity of 208 backedges. 123 proven. 18 refuted. 0 times theorem prover too weak. 67 trivial. 0 not checked. [2024-11-17 08:32:27,629 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:32:27,821 INFO L134 CoverageAnalysis]: Checked inductivity of 208 backedges. 123 proven. 18 refuted. 0 times theorem prover too weak. 67 trivial. 0 not checked. [2024-11-17 08:32:27,821 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1398632490] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:32:27,822 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:32:27,822 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 8, 8] total 13 [2024-11-17 08:32:27,822 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2001465669] [2024-11-17 08:32:27,822 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:32:27,822 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:32:27,822 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:27,822 INFO L85 PathProgramCache]: Analyzing trace with hash 52389906, now seen corresponding path program 6 times [2024-11-17 08:32:27,822 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:27,823 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [422866507] [2024-11-17 08:32:27,823 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:27,823 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:27,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:27,827 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:32:27,829 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:27,830 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:32:28,065 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:32:28,066 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2024-11-17 08:32:28,066 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2024-11-17 08:32:28,066 INFO L87 Difference]: Start difference. First operand 103 states and 128 transitions. cyclomatic complexity: 32 Second operand has 13 states, 13 states have (on average 5.461538461538462) internal successors, (71), 13 states have internal predecessors, (71), 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) [2024-11-17 08:32:28,835 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:32:28,835 INFO L93 Difference]: Finished difference Result 186 states and 222 transitions. [2024-11-17 08:32:28,835 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 186 states and 222 transitions. [2024-11-17 08:32:28,836 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 45 [2024-11-17 08:32:28,837 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 186 states to 177 states and 210 transitions. [2024-11-17 08:32:28,837 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 108 [2024-11-17 08:32:28,837 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 108 [2024-11-17 08:32:28,837 INFO L73 IsDeterministic]: Start isDeterministic. Operand 177 states and 210 transitions. [2024-11-17 08:32:28,838 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:32:28,838 INFO L218 hiAutomatonCegarLoop]: Abstraction has 177 states and 210 transitions. [2024-11-17 08:32:28,838 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 177 states and 210 transitions. [2024-11-17 08:32:28,840 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 177 to 124. [2024-11-17 08:32:28,841 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 124 states, 124 states have (on average 1.185483870967742) internal successors, (147), 123 states have internal predecessors, (147), 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) [2024-11-17 08:32:28,841 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 147 transitions. [2024-11-17 08:32:28,841 INFO L240 hiAutomatonCegarLoop]: Abstraction has 124 states and 147 transitions. [2024-11-17 08:32:28,842 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2024-11-17 08:32:28,842 INFO L425 stractBuchiCegarLoop]: Abstraction has 124 states and 147 transitions. [2024-11-17 08:32:28,842 INFO L332 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2024-11-17 08:32:28,842 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 124 states and 147 transitions. [2024-11-17 08:32:28,843 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 38 [2024-11-17 08:32:28,843 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:32:28,843 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:32:28,844 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [12, 10, 9, 9, 6, 5, 3, 3, 2, 2, 1, 1, 1, 1, 1] [2024-11-17 08:32:28,844 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [4, 3, 3, 3, 1, 1, 1, 1] [2024-11-17 08:32:28,845 INFO L745 eck$LassoCheckResult]: Stem: 5444#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 5445#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 5448#L44 assume true; 5449#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 5450#L44 assume true; 5451#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 5467#L44 assume true; 5481#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 5480#L44 assume true; 5479#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 5478#L44 assume true; 5477#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 5476#L44 assume true; 5466#L44-1 assume !(main_~i~1#1 >= 0); 5446#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 5447#L30 assume true; 5555#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 5554#L32 assume true; 5553#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5552#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 5551#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5550#L32 assume true; 5549#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5548#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 5547#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5546#L32 assume true; 5545#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5544#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 5543#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5542#L32 assume true; 5541#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5540#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 5539#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5538#L32 assume true; 5537#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 5536#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 5535#L30 assume true; 5534#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 5533#L32 assume true; 5532#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5531#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 5530#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5529#L32 assume true; 5528#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5527#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 5523#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5525#L32 assume true; 5524#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5522#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 5521#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5520#L32 assume true; 5519#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 5518#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 5517#L30 assume true; 5516#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 5515#L32 assume true; 5514#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5513#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 5511#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5509#L32 assume true; 5507#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5505#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 5454#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5455#L32 assume true; 5465#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5563#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 5452#L32-1 [2024-11-17 08:32:28,845 INFO L747 eck$LassoCheckResult]: Loop: 5452#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5453#L32 assume true; 5464#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 5468#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 5442#L30 assume true; 5443#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 5470#L32 assume true; 5557#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5460#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 5461#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5564#L32 assume true; 5562#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5561#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 5454#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 5455#L32 assume true; 5465#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 5563#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 5452#L32-1 [2024-11-17 08:32:28,845 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:28,845 INFO L85 PathProgramCache]: Analyzing trace with hash 1998038389, now seen corresponding path program 4 times [2024-11-17 08:32:28,846 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:28,846 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [519614974] [2024-11-17 08:32:28,846 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:28,846 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:28,861 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:29,118 INFO L134 CoverageAnalysis]: Checked inductivity of 250 backedges. 19 proven. 151 refuted. 0 times theorem prover too weak. 80 trivial. 0 not checked. [2024-11-17 08:32:29,119 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:32:29,119 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [519614974] [2024-11-17 08:32:29,119 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [519614974] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:32:29,119 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1131162450] [2024-11-17 08:32:29,119 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-17 08:32:29,119 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:32:29,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:29,120 INFO L229 MonitoredProcess]: Starting monitored process 47 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:32:29,121 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (47)] Waiting until timeout for monitored process [2024-11-17 08:32:29,209 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-17 08:32:29,209 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:32:29,210 INFO L255 TraceCheckSpWp]: Trace formula consists of 270 conjuncts, 12 conjuncts are in the unsatisfiable core [2024-11-17 08:32:29,212 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:29,599 INFO L134 CoverageAnalysis]: Checked inductivity of 250 backedges. 24 proven. 178 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2024-11-17 08:32:29,599 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:32:30,126 INFO L134 CoverageAnalysis]: Checked inductivity of 250 backedges. 24 proven. 178 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2024-11-17 08:32:30,127 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1131162450] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:32:30,127 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:32:30,127 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 13, 13] total 15 [2024-11-17 08:32:30,127 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1692488610] [2024-11-17 08:32:30,127 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:32:30,127 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:32:30,127 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:30,128 INFO L85 PathProgramCache]: Analyzing trace with hash 229422006, now seen corresponding path program 1 times [2024-11-17 08:32:30,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:30,128 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1860247775] [2024-11-17 08:32:30,128 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:30,128 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:30,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:30,138 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:32:30,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:32:30,148 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:32:30,805 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:32:30,805 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2024-11-17 08:32:30,805 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=165, Unknown=0, NotChecked=0, Total=210 [2024-11-17 08:32:30,805 INFO L87 Difference]: Start difference. First operand 124 states and 147 transitions. cyclomatic complexity: 28 Second operand has 15 states, 15 states have (on average 4.133333333333334) internal successors, (62), 15 states have internal predecessors, (62), 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) [2024-11-17 08:32:31,546 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:32:31,546 INFO L93 Difference]: Finished difference Result 116 states and 132 transitions. [2024-11-17 08:32:31,547 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 116 states and 132 transitions. [2024-11-17 08:32:31,548 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 25 [2024-11-17 08:32:31,549 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 116 states to 110 states and 123 transitions. [2024-11-17 08:32:31,549 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 77 [2024-11-17 08:32:31,549 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 89 [2024-11-17 08:32:31,549 INFO L73 IsDeterministic]: Start isDeterministic. Operand 110 states and 123 transitions. [2024-11-17 08:32:31,549 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:32:31,550 INFO L218 hiAutomatonCegarLoop]: Abstraction has 110 states and 123 transitions. [2024-11-17 08:32:31,550 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states and 123 transitions. [2024-11-17 08:32:31,551 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 107. [2024-11-17 08:32:31,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 107 states, 107 states have (on average 1.1214953271028036) internal successors, (120), 106 states have internal predecessors, (120), 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) [2024-11-17 08:32:31,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 120 transitions. [2024-11-17 08:32:31,552 INFO L240 hiAutomatonCegarLoop]: Abstraction has 107 states and 120 transitions. [2024-11-17 08:32:31,553 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-11-17 08:32:31,554 INFO L425 stractBuchiCegarLoop]: Abstraction has 107 states and 120 transitions. [2024-11-17 08:32:31,554 INFO L332 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2024-11-17 08:32:31,554 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 107 states and 120 transitions. [2024-11-17 08:32:31,555 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 25 [2024-11-17 08:32:31,555 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:32:31,555 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:32:31,555 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [13, 10, 9, 9, 6, 5, 4, 4, 3, 3, 1, 1, 1, 1, 1] [2024-11-17 08:32:31,555 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [3, 2, 2, 2, 1, 1, 1, 1] [2024-11-17 08:32:31,556 INFO L745 eck$LassoCheckResult]: Stem: 6120#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(12, 2);call #Ultimate.allocInit(20, 3);~#array~0.base, ~#array~0.offset := 3, 0;call write~init~int#1(0, ~#array~0.base, ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 4 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 8 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 12 + ~#array~0.offset, 4);call write~init~int#1(0, ~#array~0.base, 16 + ~#array~0.offset, 4);~n~0 := 5; 6121#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~post7#1, main_#t~mem8#1, main_#t~post9#1, main_~#array~1#1.base, main_~#array~1#1.offset, main_~i~1#1;call main_~#array~1#1.base, main_~#array~1#1.offset := #Ultimate.allocOnStack(20);havoc main_~i~1#1;main_~i~1#1 := 4; 6125#L44 assume true; 6126#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 6127#L44 assume true; 6128#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 6158#L44 assume true; 6157#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 6156#L44 assume true; 6155#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 6154#L44 assume true; 6153#L44-1 assume !!(main_~i~1#1 >= 0);call write~int#2(main_~i~1#1, main_~#array~1#1.base, main_~#array~1#1.offset + 4 * main_~i~1#1, 4);main_#t~post7#1 := main_~i~1#1;main_~i~1#1 := main_#t~post7#1 - 1;havoc main_#t~post7#1; 6152#L44 assume true; 6142#L44-1 assume !(main_~i~1#1 >= 0); 6122#L47 assume { :begin_inline_SelectionSort } true;havoc SelectionSort_#t~mem1#1, SelectionSort_#t~mem2#1, SelectionSort_#t~post3#1, SelectionSort_#t~mem4#1, SelectionSort_#t~mem5#1, SelectionSort_#t~post6#1, SelectionSort_~lh~0#1, SelectionSort_~rh~0#1, SelectionSort_~i~0#1, SelectionSort_~temp~0#1;havoc SelectionSort_~lh~0#1;havoc SelectionSort_~rh~0#1;havoc SelectionSort_~i~0#1;havoc SelectionSort_~temp~0#1;SelectionSort_~lh~0#1 := 0; 6123#L30 assume true; 6124#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 6139#L32 assume true; 6140#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6137#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 6129#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6130#L32 assume true; 6226#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6225#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 6223#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6221#L32 assume true; 6219#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6217#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 6215#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6213#L32 assume true; 6211#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6210#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 6208#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6206#L32 assume true; 6204#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 6145#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 6146#L30 assume true; 6224#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 6222#L32 assume true; 6220#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6218#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 6216#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6214#L32 assume true; 6212#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6138#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 6131#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6132#L32 assume true; 6141#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6143#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 6209#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6207#L32 assume true; 6205#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 6203#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 6202#L30 assume true; 6201#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 6200#L32 assume true; 6199#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6198#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 6196#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6194#L32 assume true; 6192#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6189#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 6187#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6185#L32 assume true; 6183#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 6181#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 6179#L30 assume true; 6177#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 6175#L32 assume true; 6173#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6171#L33 assume !(SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1);havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1; 6164#L32-1 [2024-11-17 08:32:31,557 INFO L747 eck$LassoCheckResult]: Loop: 6164#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6191#L32 assume true; 6188#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6186#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 6184#L32-1 SelectionSort_#t~post3#1 := SelectionSort_~i~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_#t~post3#1;havoc SelectionSort_#t~post3#1; 6182#L32 assume true; 6180#L32-2 assume !(SelectionSort_~i~0#1 < ~n~0); 6178#L34 call SelectionSort_#t~mem4#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);SelectionSort_~temp~0#1 := SelectionSort_#t~mem4#1;havoc SelectionSort_#t~mem4#1;call SelectionSort_#t~mem5#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);call write~int#1(SelectionSort_#t~mem5#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~lh~0#1, 4);havoc SelectionSort_#t~mem5#1;call write~int#1(SelectionSort_~temp~0#1, ~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4);SelectionSort_#t~post6#1 := SelectionSort_~lh~0#1;SelectionSort_~lh~0#1 := 1 + SelectionSort_#t~post6#1;havoc SelectionSort_#t~post6#1; 6176#L30 assume true; 6174#L30-1 assume !!(SelectionSort_~lh~0#1 < ~n~0);SelectionSort_~rh~0#1 := SelectionSort_~lh~0#1;SelectionSort_~i~0#1 := 1 + SelectionSort_~lh~0#1; 6172#L32 assume true; 6166#L32-2 assume !!(SelectionSort_~i~0#1 < ~n~0);call SelectionSort_#t~mem1#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~i~0#1, 4);call SelectionSort_#t~mem2#1 := read~int#1(~#array~0.base, ~#array~0.offset + 4 * SelectionSort_~rh~0#1, 4); 6163#L33 assume SelectionSort_#t~mem1#1 < SelectionSort_#t~mem2#1;havoc SelectionSort_#t~mem1#1;havoc SelectionSort_#t~mem2#1;SelectionSort_~rh~0#1 := SelectionSort_~i~0#1; 6164#L32-1 [2024-11-17 08:32:31,558 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:32:31,558 INFO L85 PathProgramCache]: Analyzing trace with hash 1231443938, now seen corresponding path program 5 times [2024-11-17 08:32:31,558 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:32:31,558 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1616315909] [2024-11-17 08:32:31,558 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:32:31,558 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:32:31,607 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:32:32,673 INFO L134 CoverageAnalysis]: Checked inductivity of 282 backedges. 98 proven. 112 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2024-11-17 08:32:32,674 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:32:32,674 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1616315909] [2024-11-17 08:32:32,674 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1616315909] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:32:32,674 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1440494443] [2024-11-17 08:32:32,674 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-17 08:32:32,674 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:32:32,674 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:32:32,676 INFO L229 MonitoredProcess]: Starting monitored process 48 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:32:32,677 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (48)] Waiting until timeout for monitored process [2024-11-17 08:32:32,818 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) [2024-11-17 08:32:32,818 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:32:32,820 INFO L255 TraceCheckSpWp]: Trace formula consists of 343 conjuncts, 53 conjuncts are in the unsatisfiable core [2024-11-17 08:32:32,822 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:32:34,641 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:34,644 INFO L173 IndexEqualityManager]: detected equality via solver [2024-11-17 08:32:34,650 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:34,660 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-11-17 08:32:34,660 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 4 select indices, 4 select index equivalence classes, 3 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 57 treesize of output 46 [2024-11-17 08:32:35,768 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:35,773 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:35,775 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-11-17 08:32:35,775 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 3 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 42 treesize of output 25 [2024-11-17 08:32:35,800 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:35,803 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:35,806 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:35,808 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:35,810 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:35,831 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 6 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 53 treesize of output 25 [2024-11-17 08:32:36,215 INFO L173 IndexEqualityManager]: detected equality via solver [2024-11-17 08:32:36,218 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:32:36,243 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-11-17 08:32:36,243 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 2 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 37 treesize of output 26 [2024-11-17 08:32:36,495 INFO L134 CoverageAnalysis]: Checked inductivity of 282 backedges. 76 proven. 171 refuted. 0 times theorem prover too weak. 35 trivial. 0 not checked. [2024-11-17 08:32:36,495 INFO L311 TraceCheckSpWp]: Computing backward predicates...