./Ultimate.py --spec /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/properties/termination.prp --file /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-memory-alloca/GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version fca748b1 Calling Ultimate with: /root/.sdkman/candidates/java/current/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 /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-memory-alloca/GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-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 64bit --witnessprinter.graph.data.programhash 8fbd99b1bfb27b318d252229087f8d9132096866b72085e8874326b5a6d541b4 --- Real Ultimate output --- This is Ultimate 0.2.5-wip.dd.update-z3-fca748b-m [2024-11-20 22:13:58,564 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-20 22:13:58,612 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-Automizer_Default.epf [2024-11-20 22:13:58,618 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-20 22:13:58,618 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-20 22:13:58,642 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-20 22:13:58,642 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-20 22:13:58,642 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-20 22:13:58,643 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-20 22:13:58,643 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-20 22:13:58,645 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-20 22:13:58,645 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-20 22:13:58,646 INFO L153 SettingsManager]: * Use SBE=true [2024-11-20 22:13:58,649 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-11-20 22:13:58,649 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-11-20 22:13:58,649 INFO L153 SettingsManager]: * Use old map elimination=false [2024-11-20 22:13:58,649 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-11-20 22:13:58,649 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-11-20 22:13:58,650 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-11-20 22:13:58,650 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-20 22:13:58,650 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-11-20 22:13:58,650 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-20 22:13:58,653 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-20 22:13:58,653 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-11-20 22:13:58,653 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-11-20 22:13:58,653 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-11-20 22:13:58,653 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-20 22:13:58,654 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-11-20 22:13:58,654 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-20 22:13:58,654 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-11-20 22:13:58,654 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-20 22:13:58,654 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-20 22:13:58,654 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-20 22:13:58,655 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-20 22:13:58,655 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-20 22:13:58,655 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-11-20 22:13:58,655 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 -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 8fbd99b1bfb27b318d252229087f8d9132096866b72085e8874326b5a6d541b4 [2024-11-20 22:13:58,854 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-20 22:13:58,891 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-20 22:13:58,898 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-20 22:13:58,899 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-20 22:13:58,900 INFO L274 PluginConnector]: CDTParser initialized [2024-11-20 22:13:58,901 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-memory-alloca/GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i [2024-11-20 22:14:00,245 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-20 22:14:00,449 INFO L384 CDTParser]: Found 1 translation units. [2024-11-20 22:14:00,450 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-memory-alloca/GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i [2024-11-20 22:14:00,463 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a1ea45cd/45674b5ddc5140b6b88e9a7db60ddeb9/FLAG196c6fc2f [2024-11-20 22:14:00,480 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4a1ea45cd/45674b5ddc5140b6b88e9a7db60ddeb9 [2024-11-20 22:14:00,482 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-20 22:14:00,484 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-20 22:14:00,486 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-20 22:14:00,487 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-20 22:14:00,491 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-20 22:14:00,492 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,494 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6194c8b1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00, skipping insertion in model container [2024-11-20 22:14:00,494 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,527 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-20 22:14:00,801 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-20 22:14:00,808 INFO L200 MainTranslator]: Completed pre-run [2024-11-20 22:14:00,834 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-20 22:14:00,854 INFO L204 MainTranslator]: Completed translation [2024-11-20 22:14:00,854 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00 WrapperNode [2024-11-20 22:14:00,854 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-20 22:14:00,855 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-20 22:14:00,855 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-20 22:14:00,855 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-20 22:14:00,865 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,875 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,888 INFO L138 Inliner]: procedures = 110, calls = 24, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 76 [2024-11-20 22:14:00,889 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-20 22:14:00,889 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-20 22:14:00,890 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-20 22:14:00,890 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-20 22:14:00,896 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,897 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,898 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,906 INFO L175 MemorySlicer]: Split 14 memory accesses to 3 slices as follows [5, 6, 3]. 43 percent of accesses are in the largest equivalence class. The 0 initializations are split as follows [0, 0, 0]. The 5 writes are split as follows [1, 3, 1]. [2024-11-20 22:14:00,907 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,907 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,910 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,911 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,912 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,913 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,914 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-20 22:14:00,915 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-20 22:14:00,915 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-20 22:14:00,915 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-20 22:14:00,916 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (1/1) ... [2024-11-20 22:14:00,924 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:00,932 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:00,950 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-20 22:14:00,957 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-20 22:14:00,988 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-11-20 22:14:00,988 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-11-20 22:14:00,988 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2024-11-20 22:14:00,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-11-20 22:14:00,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-11-20 22:14:00,989 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-11-20 22:14:00,989 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-11-20 22:14:00,989 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-11-20 22:14:00,989 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-20 22:14:00,989 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-20 22:14:01,094 INFO L238 CfgBuilder]: Building ICFG [2024-11-20 22:14:01,099 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-20 22:14:01,246 INFO L? ?]: Removed 11 outVars from TransFormulas that were not future-live. [2024-11-20 22:14:01,247 INFO L287 CfgBuilder]: Performing block encoding [2024-11-20 22:14:01,259 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-20 22:14:01,260 INFO L316 CfgBuilder]: Removed 1 assume(true) statements. [2024-11-20 22:14:01,260 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.11 10:14:01 BoogieIcfgContainer [2024-11-20 22:14:01,260 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-20 22:14:01,261 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-11-20 22:14:01,262 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-11-20 22:14:01,264 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-11-20 22:14:01,265 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-20 22:14:01,265 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 20.11 10:14:00" (1/3) ... [2024-11-20 22:14:01,266 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@6c8dbea6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 20.11 10:14:01, skipping insertion in model container [2024-11-20 22:14:01,266 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-20 22:14:01,266 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 10:14:00" (2/3) ... [2024-11-20 22:14:01,267 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@6c8dbea6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 20.11 10:14:01, skipping insertion in model container [2024-11-20 22:14:01,267 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-20 22:14:01,267 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.11 10:14:01" (3/3) ... [2024-11-20 22:14:01,268 INFO L332 chiAutomizerObserver]: Analyzing ICFG GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i [2024-11-20 22:14:01,310 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-11-20 22:14:01,310 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-11-20 22:14:01,310 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-11-20 22:14:01,311 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-11-20 22:14:01,311 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-11-20 22:14:01,311 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-11-20 22:14:01,311 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-11-20 22:14:01,312 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-11-20 22:14:01,316 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 13 states, 12 states have (on average 1.5) internal successors, (18), 12 states have internal predecessors, (18), 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-20 22:14:01,328 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:01,329 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:01,329 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:01,333 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2024-11-20 22:14:01,333 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-20 22:14:01,333 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-11-20 22:14:01,333 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 13 states, 12 states have (on average 1.5) internal successors, (18), 12 states have internal predecessors, (18), 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-20 22:14:01,335 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:01,335 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:01,335 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:01,336 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2024-11-20 22:14:01,336 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-20 22:14:01,341 INFO L745 eck$LassoCheckResult]: Stem: 12#$Ultimate##0true assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 7#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 9#L552true assume !main_#t~short9#1; 10#L552-2true assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 6#L556-2true [2024-11-20 22:14:01,342 INFO L747 eck$LassoCheckResult]: Loop: 6#L556-2true call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 13#L555-1true assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4#L555-3true assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5#L556true assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 6#L556-2true [2024-11-20 22:14:01,348 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:01,348 INFO L85 PathProgramCache]: Analyzing trace with hash 925671, now seen corresponding path program 1 times [2024-11-20 22:14:01,354 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:01,355 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1417727296] [2024-11-20 22:14:01,355 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:01,355 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:01,440 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:01,502 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-20 22:14:01,503 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:01,503 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1417727296] [2024-11-20 22:14:01,503 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1417727296] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-20 22:14:01,503 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-20 22:14:01,503 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-20 22:14:01,505 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [848637272] [2024-11-20 22:14:01,505 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-20 22:14:01,508 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:01,508 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:01,508 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 1 times [2024-11-20 22:14:01,508 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:01,509 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2140168256] [2024-11-20 22:14:01,509 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:01,509 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:01,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:01,532 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:01,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:01,551 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:01,754 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:01,780 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-20 22:14:01,781 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-20 22:14:01,782 INFO L87 Difference]: Start difference. First operand has 13 states, 12 states have (on average 1.5) internal successors, (18), 12 states have internal predecessors, (18), 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, 2 states have (on average 2.0) 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-20 22:14:01,797 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:01,797 INFO L93 Difference]: Finished difference Result 14 states and 18 transitions. [2024-11-20 22:14:01,798 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 14 states and 18 transitions. [2024-11-20 22:14:01,799 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:01,801 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 14 states to 8 states and 10 transitions. [2024-11-20 22:14:01,802 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 8 [2024-11-20 22:14:01,802 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 8 [2024-11-20 22:14:01,803 INFO L73 IsDeterministic]: Start isDeterministic. Operand 8 states and 10 transitions. [2024-11-20 22:14:01,803 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-11-20 22:14:01,803 INFO L218 hiAutomatonCegarLoop]: Abstraction has 8 states and 10 transitions. [2024-11-20 22:14:01,814 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 8 states and 10 transitions. [2024-11-20 22:14:01,820 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 8 to 8. [2024-11-20 22:14:01,820 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.25) internal successors, (10), 7 states have internal predecessors, (10), 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-20 22:14:01,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 10 transitions. [2024-11-20 22:14:01,822 INFO L240 hiAutomatonCegarLoop]: Abstraction has 8 states and 10 transitions. [2024-11-20 22:14:01,823 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-20 22:14:01,825 INFO L425 stractBuchiCegarLoop]: Abstraction has 8 states and 10 transitions. [2024-11-20 22:14:01,826 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-11-20 22:14:01,826 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 8 states and 10 transitions. [2024-11-20 22:14:01,827 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:01,827 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:01,827 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:01,827 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2024-11-20 22:14:01,828 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-20 22:14:01,828 INFO L745 eck$LassoCheckResult]: Stem: 40#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 41#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 43#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 36#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 37#L556-2 [2024-11-20 22:14:01,828 INFO L747 eck$LassoCheckResult]: Loop: 37#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 42#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 38#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 39#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 37#L556-2 [2024-11-20 22:14:01,830 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:01,830 INFO L85 PathProgramCache]: Analyzing trace with hash 925609, now seen corresponding path program 1 times [2024-11-20 22:14:01,830 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:01,831 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1035123586] [2024-11-20 22:14:01,831 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:01,831 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:01,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:01,881 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:01,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:01,918 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:01,919 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:01,919 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 2 times [2024-11-20 22:14:01,919 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:01,919 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [49970185] [2024-11-20 22:14:01,919 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:01,919 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:01,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:01,934 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:01,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:01,946 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:01,947 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:01,949 INFO L85 PathProgramCache]: Analyzing trace with hash 121353169, now seen corresponding path program 1 times [2024-11-20 22:14:01,949 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:01,949 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [705181709] [2024-11-20 22:14:01,949 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:01,949 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:02,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:02,027 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:02,049 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:02,055 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:02,663 INFO L204 LassoAnalysis]: Preferences: [2024-11-20 22:14:02,664 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-20 22:14:02,664 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-20 22:14:02,664 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-20 22:14:02,664 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-20 22:14:02,664 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:02,664 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-20 22:14:02,665 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-20 22:14:02,665 INFO L132 ssoRankerPreferences]: Filename of dumped script: GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i_Iteration2_Lasso [2024-11-20 22:14:02,665 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-20 22:14:02,665 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-20 22:14:02,676 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,681 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,683 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,685 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,686 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,689 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,691 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,692 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,694 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,696 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,697 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,699 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,700 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:02,702 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:03,110 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:03,113 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:03,114 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:03,116 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:03,118 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:03,120 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:03,468 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-20 22:14:03,474 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-20 22:14:03,475 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,475 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,477 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-20 22:14:03,478 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-20 22:14:03,480 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-20 22:14:03,491 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,491 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,491 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,491 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,491 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,496 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,496 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,498 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,505 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-20 22:14:03,506 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,506 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,509 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-20 22:14:03,513 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-20 22:14:03,514 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-20 22:14:03,533 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,534 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,534 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,534 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,534 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,534 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,535 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,536 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,543 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-20 22:14:03,544 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,544 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,545 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-20 22:14:03,547 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-20 22:14:03,548 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:03,558 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,559 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,559 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,559 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,559 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,559 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,559 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,563 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,571 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-20 22:14:03,571 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,571 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,573 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-20 22:14:03,575 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-20 22:14:03,575 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-20 22:14:03,585 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,585 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,586 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,586 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,586 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,586 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,586 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,587 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,594 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:03,594 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,594 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,595 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-20 22:14:03,598 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-20 22:14:03,599 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-20 22:14:03,608 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,609 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,609 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,609 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,627 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:03,627 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:03,630 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,636 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-20 22:14:03,636 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,636 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,638 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-20 22:14:03,639 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-20 22:14:03,641 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-20 22:14:03,650 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,650 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,651 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,651 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,651 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,651 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,651 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,652 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,658 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-20 22:14:03,659 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,659 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,664 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-20 22:14:03,670 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-20 22:14:03,671 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-20 22:14:03,681 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,681 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,681 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,681 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,682 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,682 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,682 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,686 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,694 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-20 22:14:03,695 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,695 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,698 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-20 22:14:03,699 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-20 22:14:03,700 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-20 22:14:03,709 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,710 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,710 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,710 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,710 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,710 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,710 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,711 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,718 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:03,718 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,718 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,720 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-20 22:14:03,721 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-20 22:14:03,722 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-20 22:14:03,732 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,732 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,732 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,732 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,732 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,732 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,732 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,736 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,742 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-20 22:14:03,742 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,743 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,744 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-20 22:14:03,745 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-20 22:14:03,747 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:03,757 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,757 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,757 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,757 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,757 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,758 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,758 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,759 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,767 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:03,767 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,768 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,770 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-20 22:14:03,778 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-20 22:14:03,779 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-20 22:14:03,789 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,789 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,789 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,789 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,789 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,789 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,789 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,792 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,798 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-20 22:14:03,798 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,798 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,800 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-20 22:14:03,801 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-20 22:14:03,802 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-20 22:14:03,812 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,812 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:03,812 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,812 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,812 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,812 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:03,812 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:03,813 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,819 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:03,819 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,820 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,821 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-20 22:14:03,823 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-20 22:14:03,823 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:03,834 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,834 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,834 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:03,834 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,844 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:03,845 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:03,848 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:03,858 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:03,858 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:03,858 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:03,859 INFO L229 MonitoredProcess]: Starting monitored process 15 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-20 22:14:03,861 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Waiting until timeout for monitored process [2024-11-20 22:14:03,862 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-20 22:14:03,872 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:03,872 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:03,875 INFO L204 nArgumentSynthesizer]: 2 loop disjuncts [2024-11-20 22:14:03,875 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:03,903 INFO L401 nArgumentSynthesizer]: We have 16 Motzkin's Theorem applications. [2024-11-20 22:14:03,903 INFO L402 nArgumentSynthesizer]: A total of 4 supporting invariants were added. [2024-11-20 22:14:03,946 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-20 22:14:04,114 INFO L443 ModelExtractionUtils]: Simplification made 26 calls to the SMT solver. [2024-11-20 22:14:04,114 INFO L444 ModelExtractionUtils]: 1 out of 31 variables were initially zero. Simplification set additionally 22 variables to zero. [2024-11-20 22:14:04,116 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:04,116 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:04,122 INFO L229 MonitoredProcess]: Starting monitored process 16 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-20 22:14:04,123 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Waiting until timeout for monitored process [2024-11-20 22:14:04,123 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-20 22:14:04,137 INFO L438 nArgumentSynthesizer]: Removed 1 redundant supporting invariants from a total of 4. [2024-11-20 22:14:04,137 INFO L474 LassoAnalysis]: Proved termination. [2024-11-20 22:14:04,137 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) 0)_1) = 2*v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) 0)_1 + 1 Supporting invariants [1*v_rep(select (select #memory_int#0 ULTIMATE.start_main_~id~0#1.base) 0)_1 >= 0, 1*v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) 0)_1 >= 0, 1*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_1 - 1 >= 0] [2024-11-20 22:14:04,147 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:04,207 INFO L156 tatePredicateManager]: 24 out of 26 supporting invariants were superfluous and have been removed [2024-11-20 22:14:04,216 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#1 [2024-11-20 22:14:04,216 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#1,GLOBAL] [2024-11-20 22:14:04,216 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#1,GLOBAL],[IdentifierExpression[~tmp~0!base,]]] [2024-11-20 22:14:04,237 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:04,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:04,260 INFO L255 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 12 conjuncts are in the unsatisfiable core [2024-11-20 22:14:04,265 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:04,326 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:04,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:04,367 INFO L255 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-20 22:14:04,368 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:04,422 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-20 22:14:04,424 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-20 22:14:04,425 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 8 states and 10 transitions. cyclomatic complexity: 3 Second operand has 6 states, 6 states have (on average 1.3333333333333333) internal successors, (8), 6 states have internal predecessors, (8), 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-20 22:14:04,500 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 8 states and 10 transitions. cyclomatic complexity: 3. Second operand has 6 states, 6 states have (on average 1.3333333333333333) internal successors, (8), 6 states have internal predecessors, (8), 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 16 states and 22 transitions. Complement of second has 9 states. [2024-11-20 22:14:04,502 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 3 stem states 2 non-accepting loop states 1 accepting loop states [2024-11-20 22:14:04,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 1.3333333333333333) internal successors, (8), 6 states have internal predecessors, (8), 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-20 22:14:04,502 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 9 transitions. [2024-11-20 22:14:04,503 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 9 transitions. Stem has 4 letters. Loop has 4 letters. [2024-11-20 22:14:04,504 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:04,504 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 9 transitions. Stem has 8 letters. Loop has 4 letters. [2024-11-20 22:14:04,504 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:04,504 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 9 transitions. Stem has 4 letters. Loop has 8 letters. [2024-11-20 22:14:04,504 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:04,504 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 16 states and 22 transitions. [2024-11-20 22:14:04,504 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:04,505 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 16 states to 16 states and 22 transitions. [2024-11-20 22:14:04,505 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 11 [2024-11-20 22:14:04,505 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 12 [2024-11-20 22:14:04,505 INFO L73 IsDeterministic]: Start isDeterministic. Operand 16 states and 22 transitions. [2024-11-20 22:14:04,506 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:04,506 INFO L218 hiAutomatonCegarLoop]: Abstraction has 16 states and 22 transitions. [2024-11-20 22:14:04,506 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16 states and 22 transitions. [2024-11-20 22:14:04,507 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16 to 16. [2024-11-20 22:14:04,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 1.375) internal successors, (22), 15 states have internal predecessors, (22), 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-20 22:14:04,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 22 transitions. [2024-11-20 22:14:04,509 INFO L240 hiAutomatonCegarLoop]: Abstraction has 16 states and 22 transitions. [2024-11-20 22:14:04,509 INFO L425 stractBuchiCegarLoop]: Abstraction has 16 states and 22 transitions. [2024-11-20 22:14:04,509 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-11-20 22:14:04,509 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 16 states and 22 transitions. [2024-11-20 22:14:04,510 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:04,510 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:04,510 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:04,510 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-20 22:14:04,510 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-20 22:14:04,510 INFO L745 eck$LassoCheckResult]: Stem: 234#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 235#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 236#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 223#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 224#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 233#L555-1 assume !main_#t~short15#1; 225#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 226#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 229#L556-2 [2024-11-20 22:14:04,510 INFO L747 eck$LassoCheckResult]: Loop: 229#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 231#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 238#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 237#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 229#L556-2 [2024-11-20 22:14:04,510 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:04,510 INFO L85 PathProgramCache]: Analyzing trace with hash 121355089, now seen corresponding path program 1 times [2024-11-20 22:14:04,511 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:04,511 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [674549496] [2024-11-20 22:14:04,511 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:04,511 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:04,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:04,642 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-20 22:14:04,643 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:04,643 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [674549496] [2024-11-20 22:14:04,643 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [674549496] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-20 22:14:04,643 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-20 22:14:04,643 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-20 22:14:04,643 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1848346533] [2024-11-20 22:14:04,643 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-20 22:14:04,643 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:04,643 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:04,643 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 3 times [2024-11-20 22:14:04,643 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:04,644 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1481099480] [2024-11-20 22:14:04,644 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:04,644 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:04,648 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:04,648 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:04,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:04,651 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:04,773 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:04,774 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-20 22:14:04,774 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-20 22:14:04,774 INFO L87 Difference]: Start difference. First operand 16 states and 22 transitions. cyclomatic complexity: 8 Second operand has 4 states, 4 states have (on average 2.0) internal successors, (8), 4 states have internal predecessors, (8), 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-20 22:14:04,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:04,799 INFO L93 Difference]: Finished difference Result 22 states and 28 transitions. [2024-11-20 22:14:04,799 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 22 states and 28 transitions. [2024-11-20 22:14:04,800 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:04,801 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 22 states to 22 states and 28 transitions. [2024-11-20 22:14:04,801 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 15 [2024-11-20 22:14:04,801 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 15 [2024-11-20 22:14:04,801 INFO L73 IsDeterministic]: Start isDeterministic. Operand 22 states and 28 transitions. [2024-11-20 22:14:04,801 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:04,801 INFO L218 hiAutomatonCegarLoop]: Abstraction has 22 states and 28 transitions. [2024-11-20 22:14:04,801 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states and 28 transitions. [2024-11-20 22:14:04,802 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 18. [2024-11-20 22:14:04,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 17 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-20 22:14:04,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 24 transitions. [2024-11-20 22:14:04,803 INFO L240 hiAutomatonCegarLoop]: Abstraction has 18 states and 24 transitions. [2024-11-20 22:14:04,806 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-20 22:14:04,807 INFO L425 stractBuchiCegarLoop]: Abstraction has 18 states and 24 transitions. [2024-11-20 22:14:04,807 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-11-20 22:14:04,807 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 18 states and 24 transitions. [2024-11-20 22:14:04,807 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:04,807 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:04,807 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:04,807 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-20 22:14:04,807 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-20 22:14:04,807 INFO L745 eck$LassoCheckResult]: Stem: 282#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 283#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 284#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 270#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 271#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 279#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 272#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 273#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 276#L556-2 [2024-11-20 22:14:04,808 INFO L747 eck$LassoCheckResult]: Loop: 276#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 287#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 286#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 285#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 276#L556-2 [2024-11-20 22:14:04,808 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:04,808 INFO L85 PathProgramCache]: Analyzing trace with hash 121353167, now seen corresponding path program 1 times [2024-11-20 22:14:04,808 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:04,808 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1119673554] [2024-11-20 22:14:04,808 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:04,808 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:04,855 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:04,855 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:04,859 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Ended with exit code 0 [2024-11-20 22:14:04,874 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:04,882 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:04,882 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:04,883 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 4 times [2024-11-20 22:14:04,883 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:04,883 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1665946841] [2024-11-20 22:14:04,883 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:04,883 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:04,889 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:04,889 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:04,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:04,895 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:04,895 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:04,895 INFO L85 PathProgramCache]: Analyzing trace with hash -677985033, now seen corresponding path program 1 times [2024-11-20 22:14:04,895 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:04,895 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2127878224] [2024-11-20 22:14:04,896 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:04,896 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:04,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:04,940 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:04,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:04,968 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:06,221 INFO L204 LassoAnalysis]: Preferences: [2024-11-20 22:14:06,221 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-20 22:14:06,221 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-20 22:14:06,221 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-20 22:14:06,221 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-20 22:14:06,221 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:06,221 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-20 22:14:06,221 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-20 22:14:06,221 INFO L132 ssoRankerPreferences]: Filename of dumped script: GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i_Iteration4_Lasso [2024-11-20 22:14:06,221 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-20 22:14:06,221 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-20 22:14:06,228 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,238 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,248 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,255 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,265 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,271 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,280 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,285 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,288 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,289 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,291 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,292 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,295 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,296 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,301 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,677 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,678 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,679 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,683 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,685 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:06,940 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-20 22:14:06,940 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-20 22:14:06,940 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:06,940 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:06,944 INFO L229 MonitoredProcess]: Starting monitored process 17 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-20 22:14:06,945 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Waiting until timeout for monitored process [2024-11-20 22:14:06,946 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-20 22:14:06,955 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:06,956 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:06,956 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:06,956 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:06,956 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:06,956 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:06,956 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:06,958 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:06,963 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:06,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:06,964 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:06,965 INFO L229 MonitoredProcess]: Starting monitored process 18 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-20 22:14:06,965 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Waiting until timeout for monitored process [2024-11-20 22:14:06,967 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-20 22:14:06,977 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:06,977 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:06,978 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:06,978 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:06,978 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:06,978 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:06,978 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:06,979 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:06,985 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:06,986 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:06,986 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:06,987 INFO L229 MonitoredProcess]: Starting monitored process 19 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-20 22:14:06,989 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Waiting until timeout for monitored process [2024-11-20 22:14:06,990 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-20 22:14:07,000 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,000 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:07,000 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,000 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,000 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,001 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:07,001 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:07,002 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,007 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Ended with exit code 0 [2024-11-20 22:14:07,008 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,008 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,009 INFO L229 MonitoredProcess]: Starting monitored process 20 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-20 22:14:07,011 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Waiting until timeout for monitored process [2024-11-20 22:14:07,011 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-20 22:14:07,020 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,021 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:07,021 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,021 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,021 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,021 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:07,021 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:07,022 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,028 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:07,028 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,028 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,030 INFO L229 MonitoredProcess]: Starting monitored process 21 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-20 22:14:07,031 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Waiting until timeout for monitored process [2024-11-20 22:14:07,031 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-20 22:14:07,041 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,041 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:07,041 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,041 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,041 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,041 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:07,041 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:07,042 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,048 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:07,049 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,049 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,051 INFO L229 MonitoredProcess]: Starting monitored process 22 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-20 22:14:07,052 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Waiting until timeout for monitored process [2024-11-20 22:14:07,053 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-20 22:14:07,064 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,064 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:07,064 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,064 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,064 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,064 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:07,064 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:07,065 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,071 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:07,071 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,071 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,072 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-20 22:14:07,075 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-20 22:14:07,076 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-20 22:14:07,086 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,086 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,086 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,086 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,087 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:07,088 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:07,090 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,096 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-20 22:14:07,096 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,096 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,098 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-20 22:14:07,099 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-20 22:14:07,099 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-20 22:14:07,108 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,109 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:07,109 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,109 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,109 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,109 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:07,109 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:07,110 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,115 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-20 22:14:07,116 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,117 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,118 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-20 22:14:07,119 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-20 22:14:07,119 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-20 22:14:07,129 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,129 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:07,129 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,129 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,129 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,129 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:07,129 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:07,130 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,136 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-20 22:14:07,137 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,137 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,138 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-20 22:14:07,140 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-20 22:14:07,141 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-20 22:14:07,150 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,150 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:07,151 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,151 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,151 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,154 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:07,154 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:07,155 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,161 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:07,161 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,162 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,164 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-20 22:14:07,164 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-20 22:14:07,165 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:07,175 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,175 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:07,175 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,175 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,175 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,176 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:07,176 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:07,177 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,182 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Ended with exit code 0 [2024-11-20 22:14:07,182 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,182 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,183 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-20 22:14:07,185 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-20 22:14:07,186 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:07,196 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,196 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:07,196 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,196 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,196 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,196 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:07,196 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:07,197 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,203 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-20 22:14:07,203 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,203 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,204 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-20 22:14:07,205 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-20 22:14:07,206 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-20 22:14:07,215 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,215 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:07,216 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,216 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,216 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,218 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:07,218 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:07,219 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,224 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-20 22:14:07,225 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,225 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,226 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-20 22:14:07,227 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-20 22:14:07,228 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:07,238 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,238 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,238 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,238 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,239 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:07,240 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:07,242 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,248 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Ended with exit code 0 [2024-11-20 22:14:07,249 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,249 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,250 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-20 22:14:07,251 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-20 22:14:07,252 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-20 22:14:07,262 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,262 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,262 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,262 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,265 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:07,265 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:07,270 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,277 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-20 22:14:07,278 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,278 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,285 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-20 22:14:07,285 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-20 22:14:07,289 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-20 22:14:07,298 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,298 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,299 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,299 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,301 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:07,301 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:07,305 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,310 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:07,310 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,310 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,311 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-20 22:14:07,312 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-20 22:14:07,314 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:07,324 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,324 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,324 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,324 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,328 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:07,328 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:07,334 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,340 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:07,340 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,340 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,342 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-20 22:14:07,343 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-20 22:14:07,344 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-20 22:14:07,353 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,354 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,354 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:07,354 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,355 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:07,355 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:07,358 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:07,363 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Ended with exit code 0 [2024-11-20 22:14:07,364 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,364 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,365 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-20 22:14:07,366 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-20 22:14:07,367 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-20 22:14:07,378 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:07,378 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:07,378 INFO L204 nArgumentSynthesizer]: 2 loop disjuncts [2024-11-20 22:14:07,378 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:07,389 INFO L401 nArgumentSynthesizer]: We have 16 Motzkin's Theorem applications. [2024-11-20 22:14:07,389 INFO L402 nArgumentSynthesizer]: A total of 4 supporting invariants were added. [2024-11-20 22:14:07,409 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-20 22:14:07,505 INFO L443 ModelExtractionUtils]: Simplification made 31 calls to the SMT solver. [2024-11-20 22:14:07,505 INFO L444 ModelExtractionUtils]: 1 out of 31 variables were initially zero. Simplification set additionally 22 variables to zero. [2024-11-20 22:14:07,506 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:07,506 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:07,507 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-20 22:14:07,509 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-20 22:14:07,509 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-20 22:14:07,523 INFO L438 nArgumentSynthesizer]: Removed 1 redundant supporting invariants from a total of 4. [2024-11-20 22:14:07,523 INFO L474 LassoAnalysis]: Proved termination. [2024-11-20 22:14:07,523 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int#0 ULTIMATE.start_main_~id~0#1.base) 0)_2, v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) 0)_2) = -1*v_rep(select (select #memory_int#0 ULTIMATE.start_main_~id~0#1.base) 0)_2 + 1*v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) 0)_2 Supporting invariants [1*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_2 - 1 >= 0, 1*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_2 - 1*v_rep(select (select #memory_int#0 ULTIMATE.start_main_~id~0#1.base) ULTIMATE.start_main_~id~0#1.offset)_2 >= 0, 1*v_rep(select (select #memory_int#0 ULTIMATE.start_main_~id~0#1.base) ULTIMATE.start_main_~id~0#1.offset)_2 >= 0] [2024-11-20 22:14:07,530 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-20 22:14:07,601 INFO L156 tatePredicateManager]: 22 out of 26 supporting invariants were superfluous and have been removed [2024-11-20 22:14:07,608 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#0 [2024-11-20 22:14:07,608 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#0,GLOBAL] [2024-11-20 22:14:07,608 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#0,GLOBAL],[IdentifierExpression[~id~0!base,]]] [2024-11-20 22:14:07,608 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#1 [2024-11-20 22:14:07,609 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#1,GLOBAL] [2024-11-20 22:14:07,609 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#1,GLOBAL],[IdentifierExpression[~tmp~0!base,]]] [2024-11-20 22:14:07,629 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:07,656 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:07,657 INFO L255 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 15 conjuncts are in the unsatisfiable core [2024-11-20 22:14:07,658 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:07,724 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-20 22:14:07,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:07,822 INFO L255 TraceCheckSpWp]: Trace formula consists of 45 conjuncts, 19 conjuncts are in the unsatisfiable core [2024-11-20 22:14:07,823 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:07,961 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-20 22:14:07,962 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.4 stem predicates 4 loop predicates [2024-11-20 22:14:07,962 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 18 states and 24 transitions. cyclomatic complexity: 8 Second operand has 8 states, 8 states have (on average 1.5) internal successors, (12), 8 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-20 22:14:08,088 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 18 states and 24 transitions. cyclomatic complexity: 8. Second operand has 8 states, 8 states have (on average 1.5) internal successors, (12), 8 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) Result 28 states and 38 transitions. Complement of second has 12 states. [2024-11-20 22:14:08,089 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 8 states 4 stem states 3 non-accepting loop states 1 accepting loop states [2024-11-20 22:14:08,090 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.5) internal successors, (12), 8 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-20 22:14:08,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 16 transitions. [2024-11-20 22:14:08,090 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 16 transitions. Stem has 8 letters. Loop has 4 letters. [2024-11-20 22:14:08,091 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:08,091 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 16 transitions. Stem has 12 letters. Loop has 4 letters. [2024-11-20 22:14:08,091 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:08,091 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 8 states and 16 transitions. Stem has 8 letters. Loop has 8 letters. [2024-11-20 22:14:08,091 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:08,091 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 28 states and 38 transitions. [2024-11-20 22:14:08,092 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:08,092 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 28 states to 28 states and 38 transitions. [2024-11-20 22:14:08,092 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17 [2024-11-20 22:14:08,093 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 18 [2024-11-20 22:14:08,093 INFO L73 IsDeterministic]: Start isDeterministic. Operand 28 states and 38 transitions. [2024-11-20 22:14:08,093 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:08,093 INFO L218 hiAutomatonCegarLoop]: Abstraction has 28 states and 38 transitions. [2024-11-20 22:14:08,093 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states and 38 transitions. [2024-11-20 22:14:08,094 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 26. [2024-11-20 22:14:08,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 1.3846153846153846) internal successors, (36), 25 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-20 22:14:08,095 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 36 transitions. [2024-11-20 22:14:08,095 INFO L240 hiAutomatonCegarLoop]: Abstraction has 26 states and 36 transitions. [2024-11-20 22:14:08,095 INFO L425 stractBuchiCegarLoop]: Abstraction has 26 states and 36 transitions. [2024-11-20 22:14:08,095 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-11-20 22:14:08,095 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 26 states and 36 transitions. [2024-11-20 22:14:08,096 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:08,096 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:08,096 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:08,096 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-20 22:14:08,096 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-20 22:14:08,097 INFO L745 eck$LassoCheckResult]: Stem: 507#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 508#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 513#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 498#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 499#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 510#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 500#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 501#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 504#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 521#L555-1 assume !main_#t~short15#1; 520#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 519#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 516#L556-2 [2024-11-20 22:14:08,097 INFO L747 eck$LassoCheckResult]: Loop: 516#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 518#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 517#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 515#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 516#L556-2 [2024-11-20 22:14:08,097 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:08,097 INFO L85 PathProgramCache]: Analyzing trace with hash -677983113, now seen corresponding path program 1 times [2024-11-20 22:14:08,097 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:08,097 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1247448110] [2024-11-20 22:14:08,097 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:08,098 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:08,109 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:08,131 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2024-11-20 22:14:08,132 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:08,132 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1247448110] [2024-11-20 22:14:08,132 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1247448110] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-20 22:14:08,132 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-20 22:14:08,132 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-20 22:14:08,132 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2094515986] [2024-11-20 22:14:08,133 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-20 22:14:08,133 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:08,133 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:08,133 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 5 times [2024-11-20 22:14:08,133 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:08,133 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1915638883] [2024-11-20 22:14:08,133 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:08,134 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:08,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:08,138 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:08,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:08,141 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:08,247 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:08,248 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-20 22:14:08,248 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-20 22:14:08,248 INFO L87 Difference]: Start difference. First operand 26 states and 36 transitions. cyclomatic complexity: 13 Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 3 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-20 22:14:08,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:08,258 INFO L93 Difference]: Finished difference Result 31 states and 36 transitions. [2024-11-20 22:14:08,258 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 31 states and 36 transitions. [2024-11-20 22:14:08,258 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:08,259 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 31 states to 26 states and 31 transitions. [2024-11-20 22:14:08,259 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17 [2024-11-20 22:14:08,259 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17 [2024-11-20 22:14:08,259 INFO L73 IsDeterministic]: Start isDeterministic. Operand 26 states and 31 transitions. [2024-11-20 22:14:08,259 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:08,259 INFO L218 hiAutomatonCegarLoop]: Abstraction has 26 states and 31 transitions. [2024-11-20 22:14:08,259 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states and 31 transitions. [2024-11-20 22:14:08,260 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 24. [2024-11-20 22:14:08,261 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 23 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-20 22:14:08,261 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 29 transitions. [2024-11-20 22:14:08,261 INFO L240 hiAutomatonCegarLoop]: Abstraction has 24 states and 29 transitions. [2024-11-20 22:14:08,261 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-20 22:14:08,262 INFO L425 stractBuchiCegarLoop]: Abstraction has 24 states and 29 transitions. [2024-11-20 22:14:08,262 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-11-20 22:14:08,262 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 24 states and 29 transitions. [2024-11-20 22:14:08,262 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:08,262 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:08,262 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:08,263 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 2, 1, 1, 1, 1] [2024-11-20 22:14:08,263 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-20 22:14:08,263 INFO L745 eck$LassoCheckResult]: Stem: 569#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 570#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 574#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 561#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 562#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 582#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 563#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 564#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 567#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 572#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 575#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 581#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 578#L556-2 [2024-11-20 22:14:08,263 INFO L747 eck$LassoCheckResult]: Loop: 578#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 580#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 579#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 577#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 578#L556-2 [2024-11-20 22:14:08,264 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:08,264 INFO L85 PathProgramCache]: Analyzing trace with hash -677985035, now seen corresponding path program 2 times [2024-11-20 22:14:08,264 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:08,264 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [303779842] [2024-11-20 22:14:08,264 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:08,264 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:08,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:08,276 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:08,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:08,290 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:08,291 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:08,291 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 6 times [2024-11-20 22:14:08,291 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:08,291 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1915507561] [2024-11-20 22:14:08,291 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:08,291 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:08,297 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:08,299 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:08,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:08,302 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:08,303 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:08,303 INFO L85 PathProgramCache]: Analyzing trace with hash -199699683, now seen corresponding path program 2 times [2024-11-20 22:14:08,303 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:08,303 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [342056071] [2024-11-20 22:14:08,303 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:08,303 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:08,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:08,317 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:08,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:08,326 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:09,454 INFO L204 LassoAnalysis]: Preferences: [2024-11-20 22:14:09,455 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-20 22:14:09,455 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-20 22:14:09,455 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-20 22:14:09,455 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-20 22:14:09,455 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:09,455 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-20 22:14:09,455 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-20 22:14:09,455 INFO L132 ssoRankerPreferences]: Filename of dumped script: GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i_Iteration6_Lasso [2024-11-20 22:14:09,455 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-20 22:14:09,455 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-20 22:14:09,457 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,459 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,461 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,464 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,466 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,470 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,472 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,474 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,476 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,755 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,757 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,758 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,760 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,761 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,763 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,764 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,765 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,767 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,768 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:09,770 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:10,034 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-20 22:14:10,034 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-20 22:14:10,034 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,034 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,037 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-20 22:14:10,038 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-20 22:14:10,039 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:10,048 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,049 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:10,049 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,049 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:10,049 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,049 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:10,049 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:10,050 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:10,056 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Ended with exit code 0 [2024-11-20 22:14:10,056 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,056 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,057 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-20 22:14:10,058 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-20 22:14:10,059 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-20 22:14:10,068 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,069 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:10,069 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,069 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:10,069 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,069 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:10,069 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:10,070 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:10,076 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Ended with exit code 0 [2024-11-20 22:14:10,076 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,076 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,080 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-20 22:14:10,081 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-20 22:14:10,081 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-20 22:14:10,091 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,091 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:10,092 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,092 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:10,092 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,092 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:10,092 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:10,093 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:10,099 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Ended with exit code 0 [2024-11-20 22:14:10,099 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,099 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,100 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-20 22:14:10,102 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-20 22:14:10,102 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-20 22:14:10,112 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,112 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:10,112 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,112 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:10,112 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,113 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:10,113 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:10,114 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:10,120 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-20 22:14:10,120 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,120 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,121 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-20 22:14:10,122 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-20 22:14:10,123 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-20 22:14:10,133 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,133 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:10,133 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,133 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:10,133 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,134 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:10,134 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:10,135 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:10,141 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-20 22:14:10,141 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,141 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,142 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-20 22:14:10,144 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-20 22:14:10,145 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-20 22:14:10,154 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,154 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:10,154 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,154 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:10,155 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,158 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:10,158 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:10,159 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:10,167 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-20 22:14:10,168 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,168 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,169 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-20 22:14:10,170 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-20 22:14:10,171 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-20 22:14:10,185 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,185 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:10,185 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,185 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:10,185 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,186 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:10,186 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:10,187 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:10,192 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-20 22:14:10,193 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,193 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,194 INFO L229 MonitoredProcess]: Starting monitored process 44 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-20 22:14:10,196 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Waiting until timeout for monitored process [2024-11-20 22:14:10,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-20 22:14:10,206 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,206 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,207 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:10,207 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,207 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:10,207 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:10,210 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:10,215 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:10,215 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,215 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,216 INFO L229 MonitoredProcess]: Starting monitored process 45 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-20 22:14:10,218 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Waiting until timeout for monitored process [2024-11-20 22:14:10,218 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-20 22:14:10,228 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,228 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,228 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:10,228 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,233 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:10,233 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:10,245 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:10,255 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Ended with exit code 0 [2024-11-20 22:14:10,255 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,255 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,257 INFO L229 MonitoredProcess]: Starting monitored process 46 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-20 22:14:10,262 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Waiting until timeout for monitored process [2024-11-20 22:14:10,266 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-20 22:14:10,284 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,284 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,284 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:10,284 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,286 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:10,286 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:10,292 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:10,298 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Ended with exit code 0 [2024-11-20 22:14:10,298 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,298 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,299 INFO L229 MonitoredProcess]: Starting monitored process 47 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-20 22:14:10,300 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Waiting until timeout for monitored process [2024-11-20 22:14:10,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-20 22:14:10,311 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:10,311 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:10,311 INFO L204 nArgumentSynthesizer]: 2 loop disjuncts [2024-11-20 22:14:10,311 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:10,319 INFO L401 nArgumentSynthesizer]: We have 16 Motzkin's Theorem applications. [2024-11-20 22:14:10,319 INFO L402 nArgumentSynthesizer]: A total of 4 supporting invariants were added. [2024-11-20 22:14:10,334 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-20 22:14:10,372 INFO L443 ModelExtractionUtils]: Simplification made 20 calls to the SMT solver. [2024-11-20 22:14:10,372 INFO L444 ModelExtractionUtils]: 4 out of 26 variables were initially zero. Simplification set additionally 12 variables to zero. [2024-11-20 22:14:10,373 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:10,373 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:10,374 INFO L229 MonitoredProcess]: Starting monitored process 48 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-20 22:14:10,375 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Waiting until timeout for monitored process [2024-11-20 22:14:10,376 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-20 22:14:10,388 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 4. [2024-11-20 22:14:10,389 INFO L474 LassoAnalysis]: Proved termination. [2024-11-20 22:14:10,389 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) 0)_3) = 1*v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) 0)_3 Supporting invariants [-2*v_rep(select (select #memory_int#0 ULTIMATE.start_main_~id~0#1.base) ULTIMATE.start_main_~id~0#1.offset)_3 + 3*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_3 >= 0, 1*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_3 - 2 >= 0] [2024-11-20 22:14:10,395 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:10,469 INFO L156 tatePredicateManager]: 22 out of 24 supporting invariants were superfluous and have been removed [2024-11-20 22:14:10,472 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#1 [2024-11-20 22:14:10,472 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#1,GLOBAL] [2024-11-20 22:14:10,472 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#1,GLOBAL],[IdentifierExpression[~tmp~0!base,]]] [2024-11-20 22:14:10,484 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:10,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:10,517 INFO L255 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 17 conjuncts are in the unsatisfiable core [2024-11-20 22:14:10,519 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:10,559 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-11-20 22:14:10,567 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:10,604 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:10,630 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 13 [2024-11-20 22:14:10,662 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:10,699 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:10,699 INFO L255 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-20 22:14:10,700 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:10,765 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-20 22:14:10,765 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.6 stem predicates 2 loop predicates [2024-11-20 22:14:10,766 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 24 states and 29 transitions. cyclomatic complexity: 8 Second operand has 9 states, 9 states have (on average 1.7777777777777777) internal successors, (16), 9 states have internal predecessors, (16), 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-20 22:14:10,821 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 24 states and 29 transitions. cyclomatic complexity: 8. Second operand has 9 states, 9 states have (on average 1.7777777777777777) internal successors, (16), 9 states have internal predecessors, (16), 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 32 states and 37 transitions. Complement of second has 6 states. [2024-11-20 22:14:10,823 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 4 stem states 0 non-accepting loop states 1 accepting loop states [2024-11-20 22:14:10,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 1.7777777777777777) internal successors, (16), 9 states have internal predecessors, (16), 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-20 22:14:10,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 14 transitions. [2024-11-20 22:14:10,823 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 14 transitions. Stem has 12 letters. Loop has 4 letters. [2024-11-20 22:14:10,823 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:10,823 INFO L682 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2024-11-20 22:14:10,836 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:10,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:10,860 INFO L255 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 17 conjuncts are in the unsatisfiable core [2024-11-20 22:14:10,861 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:10,897 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:10,900 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-11-20 22:14:10,931 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 13 [2024-11-20 22:14:10,955 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:10,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:10,972 INFO L255 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-20 22:14:10,972 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:11,002 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-20 22:14:11,003 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and with honda bouncer for loop.6 stem predicates 2 loop predicates [2024-11-20 22:14:11,003 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 24 states and 29 transitions. cyclomatic complexity: 8 Second operand has 9 states, 9 states have (on average 1.7777777777777777) internal successors, (16), 9 states have internal predecessors, (16), 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-20 22:14:11,060 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 24 states and 29 transitions. cyclomatic complexity: 8. Second operand has 9 states, 9 states have (on average 1.7777777777777777) internal successors, (16), 9 states have internal predecessors, (16), 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 32 states and 37 transitions. Complement of second has 6 states. [2024-11-20 22:14:11,061 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 4 stem states 0 non-accepting loop states 1 accepting loop states [2024-11-20 22:14:11,062 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 1.7777777777777777) internal successors, (16), 9 states have internal predecessors, (16), 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-20 22:14:11,062 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 14 transitions. [2024-11-20 22:14:11,062 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 14 transitions. Stem has 12 letters. Loop has 4 letters. [2024-11-20 22:14:11,062 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:11,062 INFO L682 stractBuchiCegarLoop]: Bad chosen interpolant automaton: word not accepted [2024-11-20 22:14:11,075 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:11,098 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:11,102 INFO L255 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 17 conjuncts are in the unsatisfiable core [2024-11-20 22:14:11,103 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:11,139 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-11-20 22:14:11,144 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:11,168 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 13 [2024-11-20 22:14:11,198 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:11,215 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:11,215 INFO L255 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-20 22:14:11,216 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:11,249 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-20 22:14:11,249 INFO L141 lantAutomatonBouncer]: Defining Buchi interpolant automaton with scrooge nondeterminism in stemwith honda bouncer for stem and without honda bouncer for loop.6 stem predicates 2 loop predicates [2024-11-20 22:14:11,249 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 24 states and 29 transitions. cyclomatic complexity: 8 Second operand has 9 states, 9 states have (on average 1.7777777777777777) internal successors, (16), 9 states have internal predecessors, (16), 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-20 22:14:11,377 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 24 states and 29 transitions. cyclomatic complexity: 8. Second operand has 9 states, 9 states have (on average 1.7777777777777777) internal successors, (16), 9 states have internal predecessors, (16), 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 55 states and 63 transitions. Complement of second has 18 states. [2024-11-20 22:14:11,377 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 10 states 6 stem states 2 non-accepting loop states 2 accepting loop states [2024-11-20 22:14:11,377 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 1.7777777777777777) internal successors, (16), 9 states have internal predecessors, (16), 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-20 22:14:11,378 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 26 transitions. [2024-11-20 22:14:11,378 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 26 transitions. Stem has 12 letters. Loop has 4 letters. [2024-11-20 22:14:11,378 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:11,378 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 26 transitions. Stem has 16 letters. Loop has 4 letters. [2024-11-20 22:14:11,378 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:11,378 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 26 transitions. Stem has 12 letters. Loop has 8 letters. [2024-11-20 22:14:11,378 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:11,378 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 55 states and 63 transitions. [2024-11-20 22:14:11,380 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 10 [2024-11-20 22:14:11,380 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 55 states to 55 states and 63 transitions. [2024-11-20 22:14:11,380 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2024-11-20 22:14:11,381 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33 [2024-11-20 22:14:11,381 INFO L73 IsDeterministic]: Start isDeterministic. Operand 55 states and 63 transitions. [2024-11-20 22:14:11,381 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:11,381 INFO L218 hiAutomatonCegarLoop]: Abstraction has 55 states and 63 transitions. [2024-11-20 22:14:11,381 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states and 63 transitions. [2024-11-20 22:14:11,382 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 28. [2024-11-20 22:14:11,382 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 27 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-20 22:14:11,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 34 transitions. [2024-11-20 22:14:11,383 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28 states and 34 transitions. [2024-11-20 22:14:11,383 INFO L425 stractBuchiCegarLoop]: Abstraction has 28 states and 34 transitions. [2024-11-20 22:14:11,383 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-11-20 22:14:11,383 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28 states and 34 transitions. [2024-11-20 22:14:11,383 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 8 [2024-11-20 22:14:11,384 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:11,384 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:11,384 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2024-11-20 22:14:11,384 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-20 22:14:11,384 INFO L745 eck$LassoCheckResult]: Stem: 1044#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1045#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 1046#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 1031#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 1032#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1040#L555-1 [2024-11-20 22:14:11,384 INFO L747 eck$LassoCheckResult]: Loop: 1040#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1033#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1034#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1037#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1040#L555-1 [2024-11-20 22:14:11,384 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:11,384 INFO L85 PathProgramCache]: Analyzing trace with hash 28693895, now seen corresponding path program 1 times [2024-11-20 22:14:11,385 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:11,385 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2007057813] [2024-11-20 22:14:11,385 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:11,385 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:11,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:11,396 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:11,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:11,401 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:11,401 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:11,401 INFO L85 PathProgramCache]: Analyzing trace with hash 1516443, now seen corresponding path program 1 times [2024-11-20 22:14:11,401 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:11,401 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [232535724] [2024-11-20 22:14:11,402 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:11,402 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:11,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:11,405 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:11,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:11,408 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:11,408 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:11,408 INFO L85 PathProgramCache]: Analyzing trace with hash -533019103, now seen corresponding path program 3 times [2024-11-20 22:14:11,408 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:11,408 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [378881733] [2024-11-20 22:14:11,408 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:11,408 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:11,428 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:11,428 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:11,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:11,434 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:12,243 INFO L204 LassoAnalysis]: Preferences: [2024-11-20 22:14:12,243 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-20 22:14:12,243 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-20 22:14:12,243 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-20 22:14:12,243 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-20 22:14:12,243 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,243 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-20 22:14:12,244 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-20 22:14:12,244 INFO L132 ssoRankerPreferences]: Filename of dumped script: GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i_Iteration7_Lasso [2024-11-20 22:14:12,244 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-20 22:14:12,244 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-20 22:14:12,246 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,247 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,248 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,249 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,252 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,253 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,255 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,256 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,257 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,259 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,260 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,261 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,540 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,542 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,543 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,544 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,545 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,547 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,548 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:12,774 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-20 22:14:12,774 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-20 22:14:12,774 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,775 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:12,776 INFO L229 MonitoredProcess]: Starting monitored process 49 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-20 22:14:12,777 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Waiting until timeout for monitored process [2024-11-20 22:14:12,778 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-20 22:14:12,788 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:12,788 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:12,788 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:12,788 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:12,788 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:12,789 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:12,789 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:12,790 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:12,795 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:12,795 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,796 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:12,797 INFO L229 MonitoredProcess]: Starting monitored process 50 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-20 22:14:12,798 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Waiting until timeout for monitored process [2024-11-20 22:14:12,799 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-20 22:14:12,808 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:12,809 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:12,809 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:12,809 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:12,809 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:12,809 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:12,809 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:12,810 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:12,816 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:12,816 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,816 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:12,817 INFO L229 MonitoredProcess]: Starting monitored process 51 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-20 22:14:12,818 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Waiting until timeout for monitored process [2024-11-20 22:14:12,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-20 22:14:12,829 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:12,830 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:12,830 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:12,830 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:12,830 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:12,830 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:12,830 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:12,831 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:12,836 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:12,837 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,837 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:12,849 INFO L229 MonitoredProcess]: Starting monitored process 52 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-20 22:14:12,850 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Waiting until timeout for monitored process [2024-11-20 22:14:12,851 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-20 22:14:12,861 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:12,861 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:12,861 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:12,861 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:12,861 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:12,862 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:12,862 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:12,865 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:12,871 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:12,871 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,871 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:12,872 INFO L229 MonitoredProcess]: Starting monitored process 53 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-20 22:14:12,873 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Waiting until timeout for monitored process [2024-11-20 22:14:12,875 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-20 22:14:12,884 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:12,885 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:12,885 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:12,885 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:12,885 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:12,885 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:12,885 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:12,886 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:12,892 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:12,892 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,892 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:12,893 INFO L229 MonitoredProcess]: Starting monitored process 54 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-20 22:14:12,895 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Waiting until timeout for monitored process [2024-11-20 22:14:12,896 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:12,905 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:12,906 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:12,906 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:12,906 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:12,906 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:12,906 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:12,906 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:12,907 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:12,913 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:12,913 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,913 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:12,915 INFO L229 MonitoredProcess]: Starting monitored process 55 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-20 22:14:12,915 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Waiting until timeout for monitored process [2024-11-20 22:14:12,918 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-20 22:14:12,927 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:12,928 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:12,928 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:12,928 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:12,928 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:12,928 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:12,928 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:12,929 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:12,935 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:12,935 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,935 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:12,937 INFO L229 MonitoredProcess]: Starting monitored process 56 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-20 22:14:12,938 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Waiting until timeout for monitored process [2024-11-20 22:14:12,938 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-20 22:14:12,948 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:12,948 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:12,948 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:12,948 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:12,948 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:12,948 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:12,948 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:12,949 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:12,955 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:12,955 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,956 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:12,957 INFO L229 MonitoredProcess]: Starting monitored process 57 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-20 22:14:12,958 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Waiting until timeout for monitored process [2024-11-20 22:14:12,959 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-20 22:14:12,969 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:12,969 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:12,969 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:12,970 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:12,970 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:12,973 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:12,973 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:12,974 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:12,984 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:12,984 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:12,984 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:12,985 INFO L229 MonitoredProcess]: Starting monitored process 58 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-20 22:14:12,986 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Waiting until timeout for monitored process [2024-11-20 22:14:12,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-20 22:14:12,997 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:12,997 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:12,997 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:12,997 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:12,998 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:12,999 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:13,001 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:13,006 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:13,006 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:13,006 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:13,007 INFO L229 MonitoredProcess]: Starting monitored process 59 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-20 22:14:13,008 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Waiting until timeout for monitored process [2024-11-20 22:14:13,009 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-20 22:14:13,019 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:13,020 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:13,020 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:13,020 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:13,020 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:13,020 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:13,020 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:13,021 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:13,027 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:13,027 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:13,027 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:13,028 INFO L229 MonitoredProcess]: Starting monitored process 60 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-20 22:14:13,029 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Waiting until timeout for monitored process [2024-11-20 22:14:13,030 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-20 22:14:13,040 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:13,040 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:13,040 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:13,040 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:13,042 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:13,042 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:13,046 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:13,052 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Ended with exit code 0 [2024-11-20 22:14:13,052 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:13,052 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:13,054 INFO L229 MonitoredProcess]: Starting monitored process 61 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-20 22:14:13,054 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Waiting until timeout for monitored process [2024-11-20 22:14:13,055 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-20 22:14:13,065 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:13,065 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:13,065 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:13,065 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:13,071 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:13,071 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:13,080 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:13,085 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:13,086 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:13,086 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:13,087 INFO L229 MonitoredProcess]: Starting monitored process 62 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-20 22:14:13,091 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Waiting until timeout for monitored process [2024-11-20 22:14:13,092 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:13,103 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:13,103 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:13,103 INFO L204 nArgumentSynthesizer]: 3 loop disjuncts [2024-11-20 22:14:13,103 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:13,121 INFO L401 nArgumentSynthesizer]: We have 30 Motzkin's Theorem applications. [2024-11-20 22:14:13,122 INFO L402 nArgumentSynthesizer]: A total of 6 supporting invariants were added. [2024-11-20 22:14:13,174 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-20 22:14:13,198 INFO L443 ModelExtractionUtils]: Simplification made 10 calls to the SMT solver. [2024-11-20 22:14:13,199 INFO L444 ModelExtractionUtils]: 23 out of 36 variables were initially zero. Simplification set additionally 10 variables to zero. [2024-11-20 22:14:13,199 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:13,199 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:13,200 INFO L229 MonitoredProcess]: Starting monitored process 63 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-20 22:14:13,201 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Waiting until timeout for monitored process [2024-11-20 22:14:13,202 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-20 22:14:13,215 INFO L438 nArgumentSynthesizer]: Removed 6 redundant supporting invariants from a total of 6. [2024-11-20 22:14:13,216 INFO L474 LassoAnalysis]: Proved termination. [2024-11-20 22:14:13,216 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int#2 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_4, v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) ULTIMATE.start_main_~tmp~0#1.offset)_4) = 1*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_4 - 1*v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) ULTIMATE.start_main_~tmp~0#1.offset)_4 Supporting invariants [] [2024-11-20 22:14:13,224 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Ended with exit code 0 [2024-11-20 22:14:13,266 INFO L156 tatePredicateManager]: 21 out of 21 supporting invariants were superfluous and have been removed [2024-11-20 22:14:13,268 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#1 [2024-11-20 22:14:13,268 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#1,GLOBAL] [2024-11-20 22:14:13,268 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#1,GLOBAL],[IdentifierExpression[~tmp~0!base,]]] [2024-11-20 22:14:13,268 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#2 [2024-11-20 22:14:13,268 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#2,GLOBAL] [2024-11-20 22:14:13,268 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#2,GLOBAL],[IdentifierExpression[~maxId~0!base,]]] [2024-11-20 22:14:13,277 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:13,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:13,292 INFO L255 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-20 22:14:13,292 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:13,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:13,303 INFO L255 TraceCheckSpWp]: Trace formula consists of 39 conjuncts, 8 conjuncts are in the unsatisfiable core [2024-11-20 22:14:13,304 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:13,340 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Ended with exit code 0 [2024-11-20 22:14:13,352 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 55 treesize of output 28 [2024-11-20 22:14:13,375 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-20 22:14:13,375 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2024-11-20 22:14:13,376 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 28 states and 34 transitions. cyclomatic complexity: 10 Second operand has 5 states, 5 states have (on average 1.8) internal successors, (9), 5 states have internal predecessors, (9), 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-20 22:14:13,399 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 28 states and 34 transitions. cyclomatic complexity: 10. Second operand has 5 states, 5 states have (on average 1.8) internal successors, (9), 5 states have internal predecessors, (9), 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 44 states and 51 transitions. Complement of second has 7 states. [2024-11-20 22:14:13,402 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2024-11-20 22:14:13,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 1.8) internal successors, (9), 5 states have internal predecessors, (9), 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-20 22:14:13,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 10 transitions. [2024-11-20 22:14:13,403 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 10 transitions. Stem has 5 letters. Loop has 4 letters. [2024-11-20 22:14:13,403 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:13,403 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 10 transitions. Stem has 9 letters. Loop has 4 letters. [2024-11-20 22:14:13,403 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:13,403 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 10 transitions. Stem has 5 letters. Loop has 8 letters. [2024-11-20 22:14:13,403 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:13,403 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 44 states and 51 transitions. [2024-11-20 22:14:13,404 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:13,405 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 44 states to 35 states and 41 transitions. [2024-11-20 22:14:13,405 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 17 [2024-11-20 22:14:13,405 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 17 [2024-11-20 22:14:13,408 INFO L73 IsDeterministic]: Start isDeterministic. Operand 35 states and 41 transitions. [2024-11-20 22:14:13,408 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:13,408 INFO L218 hiAutomatonCegarLoop]: Abstraction has 35 states and 41 transitions. [2024-11-20 22:14:13,408 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states and 41 transitions. [2024-11-20 22:14:13,410 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 29. [2024-11-20 22:14:13,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.206896551724138) internal successors, (35), 28 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-20 22:14:13,410 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2024-11-20 22:14:13,410 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 35 transitions. [2024-11-20 22:14:13,410 INFO L425 stractBuchiCegarLoop]: Abstraction has 29 states and 35 transitions. [2024-11-20 22:14:13,410 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-11-20 22:14:13,410 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 29 states and 35 transitions. [2024-11-20 22:14:13,411 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-20 22:14:13,411 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:13,411 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:13,411 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 3, 3, 2, 1, 1, 1, 1, 1] [2024-11-20 22:14:13,411 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-20 22:14:13,411 INFO L745 eck$LassoCheckResult]: Stem: 1251#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1252#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 1253#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 1238#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 1239#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1254#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1255#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1245#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1246#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1249#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1266#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1265#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1250#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1248#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1240#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1241#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1244#L556-2 [2024-11-20 22:14:13,411 INFO L747 eck$LassoCheckResult]: Loop: 1244#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1261#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1259#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1258#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1244#L556-2 [2024-11-20 22:14:13,413 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:13,413 INFO L85 PathProgramCache]: Analyzing trace with hash -197852643, now seen corresponding path program 3 times [2024-11-20 22:14:13,413 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:13,413 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1468518815] [2024-11-20 22:14:13,413 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:13,414 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:13,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:13,436 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:13,453 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:13,462 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:13,462 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:13,463 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 7 times [2024-11-20 22:14:13,463 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:13,463 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1002661134] [2024-11-20 22:14:13,463 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:13,463 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:13,468 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:13,469 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:13,470 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:13,472 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:13,472 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:13,472 INFO L85 PathProgramCache]: Analyzing trace with hash -276546491, now seen corresponding path program 4 times [2024-11-20 22:14:13,473 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:13,473 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1249936184] [2024-11-20 22:14:13,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:13,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:13,487 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:13,854 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 4 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:13,854 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:13,855 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1249936184] [2024-11-20 22:14:13,855 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1249936184] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:13,855 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [600995284] [2024-11-20 22:14:13,855 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-20 22:14:13,855 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:13,855 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:13,860 INFO L229 MonitoredProcess]: Starting monitored process 64 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:13,870 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (64)] Waiting until timeout for monitored process [2024-11-20 22:14:13,960 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-20 22:14:13,960 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:13,961 INFO L255 TraceCheckSpWp]: Trace formula consists of 245 conjuncts, 17 conjuncts are in the unsatisfiable core [2024-11-20 22:14:13,962 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:13,983 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-11-20 22:14:13,984 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:13,991 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:14,028 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2024-11-20 22:14:14,046 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 3 [2024-11-20 22:14:14,072 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:14,078 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:14,087 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 7 proven. 17 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:14,087 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:14,157 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:14,172 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 1 proven. 23 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:14,172 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [600995284] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:14,172 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:14,172 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 14 [2024-11-20 22:14:14,173 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [686484761] [2024-11-20 22:14:14,173 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:14,280 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:14,280 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2024-11-20 22:14:14,281 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=168, Unknown=0, NotChecked=0, Total=210 [2024-11-20 22:14:14,281 INFO L87 Difference]: Start difference. First operand 29 states and 35 transitions. cyclomatic complexity: 10 Second operand has 15 states, 14 states have (on average 2.4285714285714284) internal successors, (34), 15 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-20 22:14:14,424 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:14,425 INFO L93 Difference]: Finished difference Result 56 states and 63 transitions. [2024-11-20 22:14:14,425 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 56 states and 63 transitions. [2024-11-20 22:14:14,425 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 16 [2024-11-20 22:14:14,426 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 56 states to 53 states and 60 transitions. [2024-11-20 22:14:14,426 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32 [2024-11-20 22:14:14,426 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2024-11-20 22:14:14,426 INFO L73 IsDeterministic]: Start isDeterministic. Operand 53 states and 60 transitions. [2024-11-20 22:14:14,426 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:14,426 INFO L218 hiAutomatonCegarLoop]: Abstraction has 53 states and 60 transitions. [2024-11-20 22:14:14,426 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states and 60 transitions. [2024-11-20 22:14:14,428 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 44. [2024-11-20 22:14:14,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 44 states have (on average 1.1590909090909092) internal successors, (51), 43 states have internal predecessors, (51), 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-20 22:14:14,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 51 transitions. [2024-11-20 22:14:14,428 INFO L240 hiAutomatonCegarLoop]: Abstraction has 44 states and 51 transitions. [2024-11-20 22:14:14,429 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2024-11-20 22:14:14,429 INFO L425 stractBuchiCegarLoop]: Abstraction has 44 states and 51 transitions. [2024-11-20 22:14:14,429 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-11-20 22:14:14,429 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 44 states and 51 transitions. [2024-11-20 22:14:14,430 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 16 [2024-11-20 22:14:14,430 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:14,430 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:14,430 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-20 22:14:14,430 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [3, 3, 3, 2, 1] [2024-11-20 22:14:14,430 INFO L745 eck$LassoCheckResult]: Stem: 1487#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1488#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 1489#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 1473#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 1474#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1499#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1493#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1480#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1481#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1501#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1505#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1502#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1482#L556-2 [2024-11-20 22:14:14,430 INFO L747 eck$LassoCheckResult]: Loop: 1482#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1483#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1475#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1476#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1479#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1516#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1514#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1513#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1504#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1512#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1511#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1503#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1482#L556-2 [2024-11-20 22:14:14,431 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:14,431 INFO L85 PathProgramCache]: Analyzing trace with hash -677985033, now seen corresponding path program 5 times [2024-11-20 22:14:14,431 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:14,431 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [669723695] [2024-11-20 22:14:14,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:14,431 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:14,449 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:14,449 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:14,460 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:14,463 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:14,463 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:14,463 INFO L85 PathProgramCache]: Analyzing trace with hash 893710197, now seen corresponding path program 1 times [2024-11-20 22:14:14,463 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:14,464 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1327708090] [2024-11-20 22:14:14,464 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:14,464 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:14,478 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:14,484 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:14,488 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:14,493 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:14,497 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:14,497 INFO L85 PathProgramCache]: Analyzing trace with hash -557976725, now seen corresponding path program 6 times [2024-11-20 22:14:14,497 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:14,498 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [927340228] [2024-11-20 22:14:14,498 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:14,498 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:14,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:15,122 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 2 proven. 38 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:15,122 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:15,122 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [927340228] [2024-11-20 22:14:15,122 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [927340228] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:15,122 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1387064108] [2024-11-20 22:14:15,122 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-20 22:14:15,122 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:15,122 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:15,126 INFO L229 MonitoredProcess]: Starting monitored process 65 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:15,126 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (65)] Waiting until timeout for monitored process [2024-11-20 22:14:15,233 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2024-11-20 22:14:15,233 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:15,234 INFO L255 TraceCheckSpWp]: Trace formula consists of 282 conjuncts, 26 conjuncts are in the unsatisfiable core [2024-11-20 22:14:15,239 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:15,265 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-11-20 22:14:15,307 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:15,374 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2024-11-20 22:14:15,438 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 50 treesize of output 30 [2024-11-20 22:14:15,483 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 3 [2024-11-20 22:14:15,515 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 13 [2024-11-20 22:14:15,545 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:15,547 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:15,562 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 1 proven. 39 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:15,562 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:15,695 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:15,712 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 1 proven. 39 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:15,712 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1387064108] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:15,712 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:15,712 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12, 12] total 24 [2024-11-20 22:14:15,714 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [601223844] [2024-11-20 22:14:15,714 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:16,008 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:16,009 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2024-11-20 22:14:16,010 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=102, Invalid=498, Unknown=0, NotChecked=0, Total=600 [2024-11-20 22:14:16,011 INFO L87 Difference]: Start difference. First operand 44 states and 51 transitions. cyclomatic complexity: 12 Second operand has 25 states, 24 states have (on average 2.125) internal successors, (51), 25 states have internal predecessors, (51), 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-20 22:14:16,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:16,260 INFO L93 Difference]: Finished difference Result 53 states and 60 transitions. [2024-11-20 22:14:16,260 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 53 states and 60 transitions. [2024-11-20 22:14:16,260 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 20 [2024-11-20 22:14:16,261 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 53 states to 53 states and 60 transitions. [2024-11-20 22:14:16,261 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 36 [2024-11-20 22:14:16,261 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2024-11-20 22:14:16,261 INFO L73 IsDeterministic]: Start isDeterministic. Operand 53 states and 60 transitions. [2024-11-20 22:14:16,261 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:16,261 INFO L218 hiAutomatonCegarLoop]: Abstraction has 53 states and 60 transitions. [2024-11-20 22:14:16,261 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states and 60 transitions. [2024-11-20 22:14:16,263 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 48. [2024-11-20 22:14:16,263 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 48 states have (on average 1.1458333333333333) internal successors, (55), 47 states have internal predecessors, (55), 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-20 22:14:16,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 55 transitions. [2024-11-20 22:14:16,266 INFO L240 hiAutomatonCegarLoop]: Abstraction has 48 states and 55 transitions. [2024-11-20 22:14:16,266 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2024-11-20 22:14:16,266 INFO L425 stractBuchiCegarLoop]: Abstraction has 48 states and 55 transitions. [2024-11-20 22:14:16,267 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-11-20 22:14:16,267 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 48 states and 55 transitions. [2024-11-20 22:14:16,267 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 20 [2024-11-20 22:14:16,268 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:16,268 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:16,268 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-20 22:14:16,269 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [4, 4, 4, 3, 1] [2024-11-20 22:14:16,269 INFO L745 eck$LassoCheckResult]: Stem: 1766#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1767#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 1773#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 1758#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 1759#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1780#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1762#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1763#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1765#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1781#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1790#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1787#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1768#L556-2 [2024-11-20 22:14:16,269 INFO L747 eck$LassoCheckResult]: Loop: 1768#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1769#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1760#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1761#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1764#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1805#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1804#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1803#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1802#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1801#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1799#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1798#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1789#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1797#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1796#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1788#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1768#L556-2 [2024-11-20 22:14:16,269 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:16,269 INFO L85 PathProgramCache]: Analyzing trace with hash -677985033, now seen corresponding path program 7 times [2024-11-20 22:14:16,270 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:16,270 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1847938906] [2024-11-20 22:14:16,270 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:16,270 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:16,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:16,288 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:16,293 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:16,300 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:16,303 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:16,303 INFO L85 PathProgramCache]: Analyzing trace with hash 563187355, now seen corresponding path program 2 times [2024-11-20 22:14:16,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:16,304 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1384034474] [2024-11-20 22:14:16,304 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:16,304 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:16,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:16,319 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:16,326 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:16,328 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:16,328 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:16,328 INFO L85 PathProgramCache]: Analyzing trace with hash -1638160495, now seen corresponding path program 8 times [2024-11-20 22:14:16,329 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:16,329 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1731975474] [2024-11-20 22:14:16,329 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:16,329 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:16,357 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:17,028 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 7 proven. 53 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:17,028 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:17,029 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1731975474] [2024-11-20 22:14:17,029 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1731975474] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:17,029 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [196913094] [2024-11-20 22:14:17,029 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-20 22:14:17,029 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:17,029 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:17,032 INFO L229 MonitoredProcess]: Starting monitored process 66 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:17,034 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (66)] Waiting until timeout for monitored process [2024-11-20 22:14:17,136 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-20 22:14:17,136 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:17,138 INFO L255 TraceCheckSpWp]: Trace formula consists of 319 conjuncts, 32 conjuncts are in the unsatisfiable core [2024-11-20 22:14:17,140 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:17,143 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2024-11-20 22:14:17,189 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 55 treesize of output 28 [2024-11-20 22:14:17,222 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:17,278 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 31 [2024-11-20 22:14:17,312 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:17,348 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 29 [2024-11-20 22:14:17,357 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:17,359 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2024-11-20 22:14:17,361 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 59 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-20 22:14:17,361 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:17,422 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 18 [2024-11-20 22:14:17,522 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 20 [2024-11-20 22:14:17,527 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 11 proven. 48 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-20 22:14:17,527 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [196913094] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:17,527 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:17,527 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 12] total 24 [2024-11-20 22:14:17,527 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1956835071] [2024-11-20 22:14:17,527 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:17,974 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:17,975 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2024-11-20 22:14:17,975 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=527, Unknown=0, NotChecked=0, Total=600 [2024-11-20 22:14:17,975 INFO L87 Difference]: Start difference. First operand 48 states and 55 transitions. cyclomatic complexity: 12 Second operand has 25 states, 24 states have (on average 2.25) internal successors, (54), 25 states have internal predecessors, (54), 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-20 22:14:18,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:18,643 INFO L93 Difference]: Finished difference Result 123 states and 138 transitions. [2024-11-20 22:14:18,643 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 123 states and 138 transitions. [2024-11-20 22:14:18,644 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 44 [2024-11-20 22:14:18,645 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 123 states to 123 states and 138 transitions. [2024-11-20 22:14:18,645 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 88 [2024-11-20 22:14:18,645 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 88 [2024-11-20 22:14:18,645 INFO L73 IsDeterministic]: Start isDeterministic. Operand 123 states and 138 transitions. [2024-11-20 22:14:18,646 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:18,646 INFO L218 hiAutomatonCegarLoop]: Abstraction has 123 states and 138 transitions. [2024-11-20 22:14:18,646 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 123 states and 138 transitions. [2024-11-20 22:14:18,650 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 123 to 93. [2024-11-20 22:14:18,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 92 states have internal predecessors, (108), 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-20 22:14:18,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 108 transitions. [2024-11-20 22:14:18,675 INFO L240 hiAutomatonCegarLoop]: Abstraction has 93 states and 108 transitions. [2024-11-20 22:14:18,676 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2024-11-20 22:14:18,676 INFO L425 stractBuchiCegarLoop]: Abstraction has 93 states and 108 transitions. [2024-11-20 22:14:18,676 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-11-20 22:14:18,676 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 93 states and 108 transitions. [2024-11-20 22:14:18,677 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 44 [2024-11-20 22:14:18,677 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:18,677 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:18,677 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-20 22:14:18,677 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-20 22:14:18,677 INFO L745 eck$LassoCheckResult]: Stem: 2178#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 2179#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 2180#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 2165#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 2166#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2192#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2193#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2249#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2248#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2247#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2202#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2198#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2171#L556-2 [2024-11-20 22:14:18,677 INFO L747 eck$LassoCheckResult]: Loop: 2171#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2174#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2167#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2168#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2171#L556-2 [2024-11-20 22:14:18,678 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:18,678 INFO L85 PathProgramCache]: Analyzing trace with hash -677985033, now seen corresponding path program 9 times [2024-11-20 22:14:18,678 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:18,678 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2012648086] [2024-11-20 22:14:18,678 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:18,678 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:18,694 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:18,694 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:18,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:18,700 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:18,701 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:18,701 INFO L85 PathProgramCache]: Analyzing trace with hash 1419303, now seen corresponding path program 2 times [2024-11-20 22:14:18,701 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:18,701 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1265495493] [2024-11-20 22:14:18,701 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:18,701 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:18,705 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:18,705 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:18,706 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:18,707 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:18,707 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:18,707 INFO L85 PathProgramCache]: Analyzing trace with hash -197852643, now seen corresponding path program 10 times [2024-11-20 22:14:18,708 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:18,708 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1613151960] [2024-11-20 22:14:18,708 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:18,708 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:18,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:18,716 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:18,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:18,723 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:19,886 INFO L204 LassoAnalysis]: Preferences: [2024-11-20 22:14:19,886 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-20 22:14:19,887 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-20 22:14:19,887 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-20 22:14:19,887 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-20 22:14:19,887 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:19,887 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-20 22:14:19,887 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-20 22:14:19,887 INFO L132 ssoRankerPreferences]: Filename of dumped script: GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i_Iteration11_Lasso [2024-11-20 22:14:19,887 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-20 22:14:19,887 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-20 22:14:19,890 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,892 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,893 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,895 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,896 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,902 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,906 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,908 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,910 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,916 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,917 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,918 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,920 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,924 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,925 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,927 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:19,929 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:20,294 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:20,295 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:20,297 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-20 22:14:20,610 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-20 22:14:20,612 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-20 22:14:20,612 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,612 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,614 INFO L229 MonitoredProcess]: Starting monitored process 67 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-20 22:14:20,615 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Waiting until timeout for monitored process [2024-11-20 22:14:20,616 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-20 22:14:20,626 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,626 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,626 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,626 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,626 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,627 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,627 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,628 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,633 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,633 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,633 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,634 INFO L229 MonitoredProcess]: Starting monitored process 68 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-20 22:14:20,635 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Waiting until timeout for monitored process [2024-11-20 22:14:20,637 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:20,647 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,647 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,647 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,647 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,649 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:20,649 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:20,651 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,656 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,657 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,657 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,658 INFO L229 MonitoredProcess]: Starting monitored process 69 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-20 22:14:20,659 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Waiting until timeout for monitored process [2024-11-20 22:14:20,660 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-20 22:14:20,669 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,669 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,670 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,670 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,670 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,670 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,670 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,671 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,676 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,677 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,677 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,679 INFO L229 MonitoredProcess]: Starting monitored process 70 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-20 22:14:20,680 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Waiting until timeout for monitored process [2024-11-20 22:14:20,680 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-20 22:14:20,690 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,690 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,690 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,691 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,691 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,691 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,691 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,692 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,697 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,698 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,698 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,699 INFO L229 MonitoredProcess]: Starting monitored process 71 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-20 22:14:20,700 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Waiting until timeout for monitored process [2024-11-20 22:14:20,701 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:20,710 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,711 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,711 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,711 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,711 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,711 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,711 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,712 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,718 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,718 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,718 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,720 INFO L229 MonitoredProcess]: Starting monitored process 72 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-20 22:14:20,721 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Waiting until timeout for monitored process [2024-11-20 22:14:20,722 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-20 22:14:20,731 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,731 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,731 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,732 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,732 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,732 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,732 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,733 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,738 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,739 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,739 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,740 INFO L229 MonitoredProcess]: Starting monitored process 73 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-20 22:14:20,741 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Waiting until timeout for monitored process [2024-11-20 22:14:20,742 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:20,751 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,751 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,752 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,752 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,752 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,752 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,752 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,753 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,758 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,758 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,759 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,760 INFO L229 MonitoredProcess]: Starting monitored process 74 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-20 22:14:20,761 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Waiting until timeout for monitored process [2024-11-20 22:14:20,762 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:20,771 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,771 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,771 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,771 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,771 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,772 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,772 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,773 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,779 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Ended with exit code 0 [2024-11-20 22:14:20,779 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,779 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,781 INFO L229 MonitoredProcess]: Starting monitored process 75 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-20 22:14:20,782 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Waiting until timeout for monitored process [2024-11-20 22:14:20,782 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:20,792 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,792 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,792 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,792 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,792 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,793 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,793 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,794 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,799 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,799 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,799 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,800 INFO L229 MonitoredProcess]: Starting monitored process 76 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-20 22:14:20,801 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Waiting until timeout for monitored process [2024-11-20 22:14:20,802 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-20 22:14:20,812 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,812 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,812 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,812 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,812 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,812 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,812 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,813 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,819 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,819 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,819 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,821 INFO L229 MonitoredProcess]: Starting monitored process 77 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-20 22:14:20,822 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Waiting until timeout for monitored process [2024-11-20 22:14:20,822 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:20,832 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,832 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,832 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,832 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,832 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,832 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,832 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,833 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,839 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,839 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,839 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,841 INFO L229 MonitoredProcess]: Starting monitored process 78 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-20 22:14:20,842 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Waiting until timeout for monitored process [2024-11-20 22:14:20,842 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:20,852 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,852 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,852 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,852 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,852 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,852 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,852 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,854 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,859 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,859 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,859 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,860 INFO L229 MonitoredProcess]: Starting monitored process 79 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-20 22:14:20,861 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Waiting until timeout for monitored process [2024-11-20 22:14:20,862 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-20 22:14:20,871 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,872 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,872 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,872 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,872 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:20,872 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:20,875 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,881 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,881 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,881 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,882 INFO L229 MonitoredProcess]: Starting monitored process 80 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-20 22:14:20,883 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Waiting until timeout for monitored process [2024-11-20 22:14:20,884 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-20 22:14:20,894 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,894 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,894 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,894 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,894 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,894 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,894 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,895 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,901 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,901 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,901 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,903 INFO L229 MonitoredProcess]: Starting monitored process 81 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-20 22:14:20,904 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Waiting until timeout for monitored process [2024-11-20 22:14:20,905 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-20 22:14:20,914 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,914 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,915 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,915 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,915 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,915 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,915 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,916 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,921 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:20,922 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,922 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,923 INFO L229 MonitoredProcess]: Starting monitored process 82 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-20 22:14:20,924 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Waiting until timeout for monitored process [2024-11-20 22:14:20,925 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-20 22:14:20,934 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,934 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-20 22:14:20,934 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,935 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,935 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,935 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-20 22:14:20,935 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-20 22:14:20,936 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:20,942 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Ended with exit code 0 [2024-11-20 22:14:20,942 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:20,942 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:20,944 INFO L229 MonitoredProcess]: Starting monitored process 83 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-20 22:14:20,982 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Waiting until timeout for monitored process [2024-11-20 22:14:20,983 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-20 22:14:20,993 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:20,993 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:20,993 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:20,993 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:20,995 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:20,995 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:20,998 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:21,004 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (83)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:21,004 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:21,004 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:21,006 INFO L229 MonitoredProcess]: Starting monitored process 84 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-20 22:14:21,007 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Waiting until timeout for monitored process [2024-11-20 22:14:21,008 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:21,017 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:21,018 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:21,018 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:21,018 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:21,020 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:21,020 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:21,024 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:21,029 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:21,029 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:21,030 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:21,031 INFO L229 MonitoredProcess]: Starting monitored process 85 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-20 22:14:21,032 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Waiting until timeout for monitored process [2024-11-20 22:14:21,033 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-20 22:14:21,043 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:21,043 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:21,043 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:21,043 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:21,045 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:21,045 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:21,049 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:21,055 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:21,055 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:21,055 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:21,056 INFO L229 MonitoredProcess]: Starting monitored process 86 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-20 22:14:21,058 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (86)] Waiting until timeout for monitored process [2024-11-20 22:14:21,058 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-20 22:14:21,068 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:21,068 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:21,068 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:21,068 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:21,070 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:21,070 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:21,073 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:21,079 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (86)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:21,079 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:21,079 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:21,080 INFO L229 MonitoredProcess]: Starting monitored process 87 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-20 22:14:21,082 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (87)] Waiting until timeout for monitored process [2024-11-20 22:14:21,082 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-20 22:14:21,095 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:21,095 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:21,095 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:21,095 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:21,098 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:21,098 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:21,102 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:21,109 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (87)] Ended with exit code 0 [2024-11-20 22:14:21,109 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:21,110 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:21,110 INFO L229 MonitoredProcess]: Starting monitored process 88 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-20 22:14:21,111 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (88)] Waiting until timeout for monitored process [2024-11-20 22:14:21,112 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-20 22:14:21,122 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:21,123 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:21,123 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:21,123 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:21,125 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:21,125 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:21,128 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:21,134 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (88)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:21,134 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:21,134 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:21,135 INFO L229 MonitoredProcess]: Starting monitored process 89 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-20 22:14:21,136 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (89)] Waiting until timeout for monitored process [2024-11-20 22:14:21,138 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:21,148 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:21,148 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:21,148 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-20 22:14:21,148 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:21,149 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-20 22:14:21,150 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-20 22:14:21,152 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-20 22:14:21,157 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (89)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:21,157 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:21,157 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:21,159 INFO L229 MonitoredProcess]: Starting monitored process 90 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-20 22:14:21,160 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (90)] Waiting until timeout for monitored process [2024-11-20 22:14:21,161 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-20 22:14:21,171 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-20 22:14:21,171 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-20 22:14:21,171 INFO L204 nArgumentSynthesizer]: 2 loop disjuncts [2024-11-20 22:14:21,171 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-20 22:14:21,180 INFO L401 nArgumentSynthesizer]: We have 16 Motzkin's Theorem applications. [2024-11-20 22:14:21,180 INFO L402 nArgumentSynthesizer]: A total of 4 supporting invariants were added. [2024-11-20 22:14:21,200 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-20 22:14:21,239 INFO L443 ModelExtractionUtils]: Simplification made 20 calls to the SMT solver. [2024-11-20 22:14:21,239 INFO L444 ModelExtractionUtils]: 8 out of 31 variables were initially zero. Simplification set additionally 20 variables to zero. [2024-11-20 22:14:21,239 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-20 22:14:21,239 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:21,241 INFO L229 MonitoredProcess]: Starting monitored process 91 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-20 22:14:21,242 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (91)] Waiting until timeout for monitored process [2024-11-20 22:14:21,243 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-20 22:14:21,255 INFO L438 nArgumentSynthesizer]: Removed 4 redundant supporting invariants from a total of 4. [2024-11-20 22:14:21,255 INFO L474 LassoAnalysis]: Proved termination. [2024-11-20 22:14:21,255 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int#2 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_5, v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) 0)_4) = 1*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_5 - 1*v_rep(select (select #memory_int#1 ULTIMATE.start_main_~tmp~0#1.base) 0)_4 Supporting invariants [] [2024-11-20 22:14:21,262 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (90)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:21,298 INFO L156 tatePredicateManager]: 22 out of 23 supporting invariants were superfluous and have been removed [2024-11-20 22:14:21,300 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#1 [2024-11-20 22:14:21,300 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#1,GLOBAL] [2024-11-20 22:14:21,300 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#1,GLOBAL],[IdentifierExpression[~tmp~0!base,]]] [2024-11-20 22:14:21,300 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#2 [2024-11-20 22:14:21,300 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#2,GLOBAL] [2024-11-20 22:14:21,300 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#2,GLOBAL],[IdentifierExpression[~maxId~0!base,]]] [2024-11-20 22:14:21,314 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:21,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:21,332 INFO L255 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-20 22:14:21,332 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:21,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:21,369 INFO L255 TraceCheckSpWp]: Trace formula consists of 41 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-20 22:14:21,369 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:21,399 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-20 22:14:21,400 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.2 stem predicates 2 loop predicates [2024-11-20 22:14:21,400 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 93 states and 108 transitions. cyclomatic complexity: 21 Second operand has 5 states, 5 states have (on average 2.6) internal successors, (13), 5 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-20 22:14:21,437 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 93 states and 108 transitions. cyclomatic complexity: 21. Second operand has 5 states, 5 states have (on average 2.6) internal successors, (13), 5 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) Result 150 states and 168 transitions. Complement of second has 8 states. [2024-11-20 22:14:21,438 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-20 22:14:21,438 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.6) internal successors, (13), 5 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-20 22:14:21,439 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 13 transitions. [2024-11-20 22:14:21,439 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 13 transitions. Stem has 12 letters. Loop has 4 letters. [2024-11-20 22:14:21,439 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:21,439 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 13 transitions. Stem has 16 letters. Loop has 4 letters. [2024-11-20 22:14:21,439 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:21,439 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 13 transitions. Stem has 12 letters. Loop has 8 letters. [2024-11-20 22:14:21,439 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-20 22:14:21,439 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 150 states and 168 transitions. [2024-11-20 22:14:21,442 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 40 [2024-11-20 22:14:21,443 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 150 states to 118 states and 134 transitions. [2024-11-20 22:14:21,443 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 65 [2024-11-20 22:14:21,443 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 67 [2024-11-20 22:14:21,443 INFO L73 IsDeterministic]: Start isDeterministic. Operand 118 states and 134 transitions. [2024-11-20 22:14:21,443 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:21,443 INFO L218 hiAutomatonCegarLoop]: Abstraction has 118 states and 134 transitions. [2024-11-20 22:14:21,443 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 118 states and 134 transitions. [2024-11-20 22:14:21,447 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 118 to 109. [2024-11-20 22:14:21,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 109 states, 109 states have (on average 1.146788990825688) internal successors, (125), 108 states have internal predecessors, (125), 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-20 22:14:21,451 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 125 transitions. [2024-11-20 22:14:21,451 INFO L240 hiAutomatonCegarLoop]: Abstraction has 109 states and 125 transitions. [2024-11-20 22:14:21,451 INFO L425 stractBuchiCegarLoop]: Abstraction has 109 states and 125 transitions. [2024-11-20 22:14:21,451 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-11-20 22:14:21,451 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 109 states and 125 transitions. [2024-11-20 22:14:21,451 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 40 [2024-11-20 22:14:21,452 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:21,452 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:21,452 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 2, 1, 1, 1, 1, 1] [2024-11-20 22:14:21,452 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 6, 4, 2] [2024-11-20 22:14:21,452 INFO L745 eck$LassoCheckResult]: Stem: 2591#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 2592#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 2593#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 2578#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 2579#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2614#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2613#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2612#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2610#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2611#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2618#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2616#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2617#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2621#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2598#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2596#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2597#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2588#L555-1 [2024-11-20 22:14:21,455 INFO L747 eck$LassoCheckResult]: Loop: 2588#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2594#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2584#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2585#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2646#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2685#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2634#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2633#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2645#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2580#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2581#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2663#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2684#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2683#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2672#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2669#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2667#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2665#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2662#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2659#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2656#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2653#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2652#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2587#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2588#L555-1 [2024-11-20 22:14:21,455 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:21,455 INFO L85 PathProgramCache]: Analyzing trace with hash 2006217425, now seen corresponding path program 11 times [2024-11-20 22:14:21,455 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:21,455 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [119968857] [2024-11-20 22:14:21,455 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:21,455 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:21,472 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:21,655 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 5 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:21,655 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:21,655 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [119968857] [2024-11-20 22:14:21,655 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [119968857] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:21,655 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1693038104] [2024-11-20 22:14:21,655 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-20 22:14:21,656 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:21,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:21,657 INFO L229 MonitoredProcess]: Starting monitored process 92 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:21,658 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (92)] Waiting until timeout for monitored process [2024-11-20 22:14:21,747 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2024-11-20 22:14:21,747 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:21,748 INFO L255 TraceCheckSpWp]: Trace formula consists of 221 conjuncts, 27 conjuncts are in the unsatisfiable core [2024-11-20 22:14:21,750 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:21,822 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2024-11-20 22:14:21,908 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 3 [2024-11-20 22:14:21,933 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 50 treesize of output 34 [2024-11-20 22:14:21,984 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 16 [2024-11-20 22:14:21,987 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 12 [2024-11-20 22:14:22,003 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 8 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:22,003 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:22,149 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (91)] Forceful destruction successful, exit code 0 [2024-11-20 22:14:22,266 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:22,271 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 3 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:22,271 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1693038104] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:22,272 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:22,272 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 12, 12] total 26 [2024-11-20 22:14:22,272 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [846174640] [2024-11-20 22:14:22,272 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:22,272 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:22,272 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:22,273 INFO L85 PathProgramCache]: Analyzing trace with hash 482720281, now seen corresponding path program 3 times [2024-11-20 22:14:22,273 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:22,273 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [246433382] [2024-11-20 22:14:22,273 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:22,273 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:22,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:22,397 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 48 proven. 4 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2024-11-20 22:14:22,397 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:22,397 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [246433382] [2024-11-20 22:14:22,398 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [246433382] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:22,398 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [550843874] [2024-11-20 22:14:22,398 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-20 22:14:22,398 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:22,398 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:22,402 INFO L229 MonitoredProcess]: Starting monitored process 93 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:22,403 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (93)] Waiting until timeout for monitored process [2024-11-20 22:14:22,505 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2024-11-20 22:14:22,506 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:22,506 INFO L255 TraceCheckSpWp]: Trace formula consists of 224 conjuncts, 16 conjuncts are in the unsatisfiable core [2024-11-20 22:14:22,508 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:22,510 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2024-11-20 22:14:22,532 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 11 [2024-11-20 22:14:22,547 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 3 [2024-11-20 22:14:22,568 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 13 [2024-11-20 22:14:22,590 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:22,593 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:22,604 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 39 proven. 18 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-11-20 22:14:22,605 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:22,672 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 11 [2024-11-20 22:14:22,684 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 43 proven. 14 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-11-20 22:14:22,684 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [550843874] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:22,685 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:22,685 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 8, 8] total 17 [2024-11-20 22:14:22,685 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [347517596] [2024-11-20 22:14:22,685 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:22,685 INFO L762 eck$LassoCheckResult]: loop already infeasible [2024-11-20 22:14:22,685 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:22,685 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2024-11-20 22:14:22,686 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=165, Invalid=485, Unknown=0, NotChecked=0, Total=650 [2024-11-20 22:14:22,686 INFO L87 Difference]: Start difference. First operand 109 states and 125 transitions. cyclomatic complexity: 23 Second operand has 26 states, 26 states have (on average 1.6538461538461537) internal successors, (43), 26 states have internal predecessors, (43), 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-20 22:14:22,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:22,867 INFO L93 Difference]: Finished difference Result 98 states and 104 transitions. [2024-11-20 22:14:22,867 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 98 states and 104 transitions. [2024-11-20 22:14:22,868 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 32 [2024-11-20 22:14:22,868 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 98 states to 89 states and 95 transitions. [2024-11-20 22:14:22,868 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 49 [2024-11-20 22:14:22,868 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 53 [2024-11-20 22:14:22,868 INFO L73 IsDeterministic]: Start isDeterministic. Operand 89 states and 95 transitions. [2024-11-20 22:14:22,868 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:22,868 INFO L218 hiAutomatonCegarLoop]: Abstraction has 89 states and 95 transitions. [2024-11-20 22:14:22,869 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 89 states and 95 transitions. [2024-11-20 22:14:22,870 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 89 to 53. [2024-11-20 22:14:22,870 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 53 states have (on average 1.0754716981132075) internal successors, (57), 52 states have internal predecessors, (57), 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-20 22:14:22,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 57 transitions. [2024-11-20 22:14:22,871 INFO L240 hiAutomatonCegarLoop]: Abstraction has 53 states and 57 transitions. [2024-11-20 22:14:22,873 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2024-11-20 22:14:22,874 INFO L425 stractBuchiCegarLoop]: Abstraction has 53 states and 57 transitions. [2024-11-20 22:14:22,874 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-11-20 22:14:22,874 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 53 states and 57 transitions. [2024-11-20 22:14:22,874 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 16 [2024-11-20 22:14:22,874 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:22,874 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:22,875 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 5, 3, 2, 1, 1, 1, 1] [2024-11-20 22:14:22,876 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [4, 4, 4, 3, 1] [2024-11-20 22:14:22,876 INFO L745 eck$LassoCheckResult]: Stem: 3084#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 3085#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 3089#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 3075#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 3076#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3104#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3109#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3108#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3107#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3105#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3106#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3082#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3083#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3125#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3127#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3126#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3087#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3088#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3079#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3080#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3118#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3116#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3114#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3110#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3111#L556-2 [2024-11-20 22:14:22,876 INFO L747 eck$LassoCheckResult]: Loop: 3111#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3090#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3077#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3078#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3081#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3086#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3124#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3123#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3122#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3121#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3120#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3119#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3113#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3117#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3115#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3112#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3111#L556-2 [2024-11-20 22:14:22,876 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:22,876 INFO L85 PathProgramCache]: Analyzing trace with hash -1559518613, now seen corresponding path program 12 times [2024-11-20 22:14:22,877 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:22,877 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1094676663] [2024-11-20 22:14:22,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:22,877 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:22,892 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:23,464 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 4 proven. 32 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2024-11-20 22:14:23,464 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:23,464 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1094676663] [2024-11-20 22:14:23,464 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1094676663] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:23,464 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1634732216] [2024-11-20 22:14:23,464 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-20 22:14:23,464 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:23,465 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:23,470 INFO L229 MonitoredProcess]: Starting monitored process 94 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:23,474 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (94)] Waiting until timeout for monitored process [2024-11-20 22:14:23,584 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2024-11-20 22:14:23,584 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:23,585 INFO L255 TraceCheckSpWp]: Trace formula consists of 282 conjuncts, 27 conjuncts are in the unsatisfiable core [2024-11-20 22:14:23,586 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:23,601 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2024-11-20 22:14:23,637 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:23,672 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 31 [2024-11-20 22:14:23,717 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 45 treesize of output 29 [2024-11-20 22:14:23,733 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:23,735 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2024-11-20 22:14:23,736 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 0 proven. 34 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-20 22:14:23,737 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:23,780 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 18 [2024-11-20 22:14:23,839 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 13 proven. 21 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-20 22:14:23,839 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1634732216] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:23,839 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:23,839 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 18 [2024-11-20 22:14:23,840 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [743450038] [2024-11-20 22:14:23,840 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:23,840 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:23,841 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:23,841 INFO L85 PathProgramCache]: Analyzing trace with hash 563187355, now seen corresponding path program 4 times [2024-11-20 22:14:23,841 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:23,841 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [519737666] [2024-11-20 22:14:23,841 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:23,841 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:23,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:23,848 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:23,851 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:23,853 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:24,311 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:24,311 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-11-20 22:14:24,312 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=283, Unknown=0, NotChecked=0, Total=342 [2024-11-20 22:14:24,312 INFO L87 Difference]: Start difference. First operand 53 states and 57 transitions. cyclomatic complexity: 7 Second operand has 19 states, 18 states have (on average 2.111111111111111) internal successors, (38), 19 states have internal predecessors, (38), 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-20 22:14:24,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:24,482 INFO L93 Difference]: Finished difference Result 67 states and 71 transitions. [2024-11-20 22:14:24,483 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 67 states and 71 transitions. [2024-11-20 22:14:24,483 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 16 [2024-11-20 22:14:24,483 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 67 states to 48 states and 51 transitions. [2024-11-20 22:14:24,483 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 29 [2024-11-20 22:14:24,484 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 29 [2024-11-20 22:14:24,484 INFO L73 IsDeterministic]: Start isDeterministic. Operand 48 states and 51 transitions. [2024-11-20 22:14:24,484 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:24,484 INFO L218 hiAutomatonCegarLoop]: Abstraction has 48 states and 51 transitions. [2024-11-20 22:14:24,484 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states and 51 transitions. [2024-11-20 22:14:24,485 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 48. [2024-11-20 22:14:24,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 48 states have (on average 1.0625) internal successors, (51), 47 states have internal predecessors, (51), 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-20 22:14:24,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 51 transitions. [2024-11-20 22:14:24,486 INFO L240 hiAutomatonCegarLoop]: Abstraction has 48 states and 51 transitions. [2024-11-20 22:14:24,486 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2024-11-20 22:14:24,486 INFO L425 stractBuchiCegarLoop]: Abstraction has 48 states and 51 transitions. [2024-11-20 22:14:24,486 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-11-20 22:14:24,486 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 48 states and 51 transitions. [2024-11-20 22:14:24,487 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 16 [2024-11-20 22:14:24,487 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:24,487 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:24,487 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 7, 5, 2, 1, 1, 1, 1] [2024-11-20 22:14:24,487 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [4, 4, 4, 3, 1] [2024-11-20 22:14:24,488 INFO L745 eck$LassoCheckResult]: Stem: 3383#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 3384#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 3385#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 3371#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 3372#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3398#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3397#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3396#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3395#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3392#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3394#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3393#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3391#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3390#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3389#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3388#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3386#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3387#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3416#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3414#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3381#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3382#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3375#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3376#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3378#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3407#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3410#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3408#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3406#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3404#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3402#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3399#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3379#L556-2 [2024-11-20 22:14:24,488 INFO L747 eck$LassoCheckResult]: Loop: 3379#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3380#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3373#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3374#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3377#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3418#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3417#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3415#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3413#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3412#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3411#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3409#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3401#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3405#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3403#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3400#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3379#L556-2 [2024-11-20 22:14:24,488 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:24,488 INFO L85 PathProgramCache]: Analyzing trace with hash -1170691657, now seen corresponding path program 13 times [2024-11-20 22:14:24,488 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:24,488 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [629008276] [2024-11-20 22:14:24,488 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:24,489 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:24,503 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:25,060 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 5 proven. 79 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:25,061 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:25,061 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [629008276] [2024-11-20 22:14:25,061 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [629008276] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:25,061 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [97162887] [2024-11-20 22:14:25,061 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-20 22:14:25,061 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:25,061 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:25,063 INFO L229 MonitoredProcess]: Starting monitored process 95 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:25,065 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (95)] Waiting until timeout for monitored process [2024-11-20 22:14:25,186 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:25,187 INFO L255 TraceCheckSpWp]: Trace formula consists of 356 conjuncts, 32 conjuncts are in the unsatisfiable core [2024-11-20 22:14:25,191 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:25,217 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-11-20 22:14:25,279 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 19 [2024-11-20 22:14:25,338 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:25,427 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2024-11-20 22:14:25,455 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 50 treesize of output 30 [2024-11-20 22:14:25,499 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 3 [2024-11-20 22:14:25,540 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 13 [2024-11-20 22:14:25,588 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 13 [2024-11-20 22:14:25,630 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:25,632 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-20 22:14:25,656 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 4 proven. 80 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:25,657 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:25,871 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:25,902 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 4 proven. 80 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:25,905 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [97162887] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:25,905 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:25,905 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14, 14] total 28 [2024-11-20 22:14:25,905 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1016890946] [2024-11-20 22:14:25,905 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:25,906 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:25,906 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:25,906 INFO L85 PathProgramCache]: Analyzing trace with hash 563187355, now seen corresponding path program 5 times [2024-11-20 22:14:25,906 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:25,906 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [773499581] [2024-11-20 22:14:25,906 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:25,906 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:25,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:25,920 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:25,926 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:25,928 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:26,387 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:26,388 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2024-11-20 22:14:26,388 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=129, Invalid=683, Unknown=0, NotChecked=0, Total=812 [2024-11-20 22:14:26,389 INFO L87 Difference]: Start difference. First operand 48 states and 51 transitions. cyclomatic complexity: 6 Second operand has 29 states, 28 states have (on average 2.392857142857143) internal successors, (67), 29 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-20 22:14:26,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:26,689 INFO L93 Difference]: Finished difference Result 65 states and 68 transitions. [2024-11-20 22:14:26,689 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 65 states and 68 transitions. [2024-11-20 22:14:26,690 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 20 [2024-11-20 22:14:26,690 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 65 states to 62 states and 65 transitions. [2024-11-20 22:14:26,690 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 33 [2024-11-20 22:14:26,690 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33 [2024-11-20 22:14:26,690 INFO L73 IsDeterministic]: Start isDeterministic. Operand 62 states and 65 transitions. [2024-11-20 22:14:26,691 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:26,691 INFO L218 hiAutomatonCegarLoop]: Abstraction has 62 states and 65 transitions. [2024-11-20 22:14:26,691 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 62 states and 65 transitions. [2024-11-20 22:14:26,692 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 62 to 56. [2024-11-20 22:14:26,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 56 states have (on average 1.0535714285714286) internal successors, (59), 55 states have internal predecessors, (59), 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-20 22:14:26,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 59 transitions. [2024-11-20 22:14:26,692 INFO L240 hiAutomatonCegarLoop]: Abstraction has 56 states and 59 transitions. [2024-11-20 22:14:26,693 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-11-20 22:14:26,693 INFO L425 stractBuchiCegarLoop]: Abstraction has 56 states and 59 transitions. [2024-11-20 22:14:26,693 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-11-20 22:14:26,693 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 56 states and 59 transitions. [2024-11-20 22:14:26,693 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 20 [2024-11-20 22:14:26,693 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:26,693 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:26,694 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 8, 6, 2, 1, 1, 1, 1] [2024-11-20 22:14:26,694 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [5, 5, 5, 4, 1] [2024-11-20 22:14:26,694 INFO L745 eck$LassoCheckResult]: Stem: 3737#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 3738#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 3739#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 3726#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 3727#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3740#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3741#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3752#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3751#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3748#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3750#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3749#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3747#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3746#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3745#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3744#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3743#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3742#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3730#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3731#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3734#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3736#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3781#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3780#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3779#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3778#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3777#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3776#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3775#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3762#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3774#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3763#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3761#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3759#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3757#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3753#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3754#L556-2 [2024-11-20 22:14:26,694 INFO L747 eck$LassoCheckResult]: Loop: 3754#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3773#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3772#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3732#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3733#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3735#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3728#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3729#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3771#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3770#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3769#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3768#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3767#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3766#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3765#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3764#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3756#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3760#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3758#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3755#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3754#L556-2 [2024-11-20 22:14:26,695 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:26,695 INFO L85 PathProgramCache]: Analyzing trace with hash 901404637, now seen corresponding path program 14 times [2024-11-20 22:14:26,695 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:26,695 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1845961008] [2024-11-20 22:14:26,695 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:26,695 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:26,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:27,617 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 11 proven. 101 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:27,617 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:27,617 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1845961008] [2024-11-20 22:14:27,617 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1845961008] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:27,617 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1949771863] [2024-11-20 22:14:27,617 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-20 22:14:27,618 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:27,618 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:27,619 INFO L229 MonitoredProcess]: Starting monitored process 96 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:27,628 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (96)] Waiting until timeout for monitored process [2024-11-20 22:14:27,755 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-20 22:14:27,755 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:27,757 INFO L255 TraceCheckSpWp]: Trace formula consists of 393 conjuncts, 40 conjuncts are in the unsatisfiable core [2024-11-20 22:14:27,759 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:27,761 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2024-11-20 22:14:27,776 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:14:27,864 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 55 treesize of output 28 [2024-11-20 22:14:27,920 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:28,000 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 31 [2024-11-20 22:14:28,044 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:28,052 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:28,086 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 29 [2024-11-20 22:14:28,093 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:28,095 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2024-11-20 22:14:28,096 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 0 proven. 111 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-20 22:14:28,096 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:28,167 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 18 [2024-11-20 22:14:28,303 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 20 [2024-11-20 22:14:28,316 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 11 proven. 100 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-20 22:14:28,316 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1949771863] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:28,316 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:28,316 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14, 14] total 26 [2024-11-20 22:14:28,317 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [364513670] [2024-11-20 22:14:28,317 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:28,317 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:28,318 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:28,318 INFO L85 PathProgramCache]: Analyzing trace with hash -896652607, now seen corresponding path program 6 times [2024-11-20 22:14:28,318 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:28,318 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1083593831] [2024-11-20 22:14:28,318 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:28,318 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:28,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:28,331 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:28,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:28,339 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:29,125 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:29,126 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2024-11-20 22:14:29,126 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=624, Unknown=0, NotChecked=0, Total=702 [2024-11-20 22:14:29,126 INFO L87 Difference]: Start difference. First operand 56 states and 59 transitions. cyclomatic complexity: 6 Second operand has 27 states, 26 states have (on average 2.3461538461538463) internal successors, (61), 27 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-20 22:14:29,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:29,807 INFO L93 Difference]: Finished difference Result 86 states and 90 transitions. [2024-11-20 22:14:29,807 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 86 states and 90 transitions. [2024-11-20 22:14:29,808 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 20 [2024-11-20 22:14:29,808 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 86 states to 63 states and 66 transitions. [2024-11-20 22:14:29,808 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 33 [2024-11-20 22:14:29,808 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33 [2024-11-20 22:14:29,808 INFO L73 IsDeterministic]: Start isDeterministic. Operand 63 states and 66 transitions. [2024-11-20 22:14:29,808 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:29,808 INFO L218 hiAutomatonCegarLoop]: Abstraction has 63 states and 66 transitions. [2024-11-20 22:14:29,809 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states and 66 transitions. [2024-11-20 22:14:29,810 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 60. [2024-11-20 22:14:29,810 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 60 states have (on average 1.05) internal successors, (63), 59 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-20 22:14:29,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 63 transitions. [2024-11-20 22:14:29,810 INFO L240 hiAutomatonCegarLoop]: Abstraction has 60 states and 63 transitions. [2024-11-20 22:14:29,810 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2024-11-20 22:14:29,811 INFO L425 stractBuchiCegarLoop]: Abstraction has 60 states and 63 transitions. [2024-11-20 22:14:29,811 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-11-20 22:14:29,811 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 60 states and 63 transitions. [2024-11-20 22:14:29,814 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 20 [2024-11-20 22:14:29,814 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:29,814 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:29,815 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [9, 9, 9, 7, 2, 1, 1, 1, 1] [2024-11-20 22:14:29,815 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [5, 5, 5, 4, 1] [2024-11-20 22:14:29,815 INFO L745 eck$LassoCheckResult]: Stem: 4162#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 4163#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 4164#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 4150#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 4151#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4165#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4154#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4155#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4157#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4190#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4191#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4192#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4160#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4161#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4166#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4177#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4175#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4174#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4173#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4172#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4158#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4159#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4189#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4188#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4187#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4186#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4185#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4184#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4183#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4182#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4181#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4180#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4179#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4169#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4178#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4176#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4168#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4170#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4196#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4193#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4171#L556-2 [2024-11-20 22:14:29,815 INFO L747 eck$LassoCheckResult]: Loop: 4171#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4167#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4152#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4153#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4156#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4209#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4208#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4207#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4206#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4205#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4204#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4203#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4202#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4201#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4200#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4199#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4195#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4198#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4197#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4194#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4171#L556-2 [2024-11-20 22:14:29,815 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:29,816 INFO L85 PathProgramCache]: Analyzing trace with hash -1348611069, now seen corresponding path program 15 times [2024-11-20 22:14:29,816 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:29,816 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [259872148] [2024-11-20 22:14:29,816 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:29,816 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:29,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:30,529 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 5 proven. 139 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:30,529 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:30,529 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [259872148] [2024-11-20 22:14:30,529 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [259872148] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:30,529 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [455019062] [2024-11-20 22:14:30,529 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-20 22:14:30,529 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:30,529 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:30,532 INFO L229 MonitoredProcess]: Starting monitored process 97 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:30,533 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (97)] Waiting until timeout for monitored process [2024-11-20 22:14:30,677 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2024-11-20 22:14:30,678 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:30,679 INFO L255 TraceCheckSpWp]: Trace formula consists of 356 conjuncts, 48 conjuncts are in the unsatisfiable core [2024-11-20 22:14:30,682 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:30,697 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2024-11-20 22:14:30,715 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:30,817 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2024-11-20 22:14:30,966 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 3 [2024-11-20 22:14:31,146 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 48 treesize of output 21 [2024-11-20 22:14:31,215 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 61 treesize of output 41 [2024-11-20 22:14:31,325 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 38 treesize of output 22 [2024-11-20 22:14:31,395 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:14:31,455 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 16 [2024-11-20 22:14:31,458 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 12 [2024-11-20 22:14:31,492 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 27 proven. 105 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2024-11-20 22:14:31,492 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:32,076 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 51 treesize of output 35 [2024-11-20 22:14:32,136 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 3 proven. 129 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2024-11-20 22:14:32,136 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [455019062] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:32,136 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:32,137 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 18, 18] total 41 [2024-11-20 22:14:32,137 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1137402461] [2024-11-20 22:14:32,137 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:32,137 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:32,137 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:32,138 INFO L85 PathProgramCache]: Analyzing trace with hash -896652607, now seen corresponding path program 7 times [2024-11-20 22:14:32,138 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:32,138 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1395766139] [2024-11-20 22:14:32,138 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:32,138 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:32,147 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:32,147 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:32,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:32,153 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:32,908 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:32,908 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 42 interpolants. [2024-11-20 22:14:32,909 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=288, Invalid=1434, Unknown=0, NotChecked=0, Total=1722 [2024-11-20 22:14:32,909 INFO L87 Difference]: Start difference. First operand 60 states and 63 transitions. cyclomatic complexity: 6 Second operand has 42 states, 41 states have (on average 2.1219512195121952) internal successors, (87), 42 states have internal predecessors, (87), 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-20 22:14:33,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:33,904 INFO L93 Difference]: Finished difference Result 99 states and 102 transitions. [2024-11-20 22:14:33,904 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 99 states and 102 transitions. [2024-11-20 22:14:33,905 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 32 [2024-11-20 22:14:33,905 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 99 states to 90 states and 93 transitions. [2024-11-20 22:14:33,905 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 45 [2024-11-20 22:14:33,905 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 45 [2024-11-20 22:14:33,905 INFO L73 IsDeterministic]: Start isDeterministic. Operand 90 states and 93 transitions. [2024-11-20 22:14:33,905 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:33,905 INFO L218 hiAutomatonCegarLoop]: Abstraction has 90 states and 93 transitions. [2024-11-20 22:14:33,906 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states and 93 transitions. [2024-11-20 22:14:33,907 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 84. [2024-11-20 22:14:33,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 84 states have (on average 1.0357142857142858) internal successors, (87), 83 states have internal predecessors, (87), 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-20 22:14:33,907 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 87 transitions. [2024-11-20 22:14:33,908 INFO L240 hiAutomatonCegarLoop]: Abstraction has 84 states and 87 transitions. [2024-11-20 22:14:33,908 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 36 states. [2024-11-20 22:14:33,908 INFO L425 stractBuchiCegarLoop]: Abstraction has 84 states and 87 transitions. [2024-11-20 22:14:33,909 INFO L332 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2024-11-20 22:14:33,909 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 84 states and 87 transitions. [2024-11-20 22:14:33,909 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 32 [2024-11-20 22:14:33,910 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:33,910 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:33,910 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [12, 12, 12, 10, 2, 1, 1, 1, 1] [2024-11-20 22:14:33,910 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [8, 8, 8, 7, 1] [2024-11-20 22:14:33,911 INFO L745 eck$LassoCheckResult]: Stem: 4661#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 4662#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 4663#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 4650#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 4651#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4664#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4665#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4685#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4684#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4683#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4682#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4681#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4680#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4676#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4678#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4672#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4673#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4675#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4674#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4671#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4658#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4659#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4654#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4655#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4657#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4660#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4704#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4703#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4702#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4701#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4700#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4699#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4698#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4697#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4696#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4695#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4694#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4693#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4692#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4691#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4690#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4689#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4688#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4687#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4686#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4669#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4679#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4677#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4668#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4670#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4708#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4705#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4667#L556-2 [2024-11-20 22:14:33,911 INFO L747 eck$LassoCheckResult]: Loop: 4667#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4666#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4652#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4653#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4656#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4733#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4732#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4731#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4730#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4729#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4728#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4727#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4726#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4725#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4724#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4723#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4722#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4721#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4720#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4719#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4718#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4717#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4716#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4715#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4714#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4713#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4712#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4711#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4707#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4710#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4709#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4706#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4667#L556-2 [2024-11-20 22:14:33,911 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:33,911 INFO L85 PathProgramCache]: Analyzing trace with hash -490421387, now seen corresponding path program 16 times [2024-11-20 22:14:33,911 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:33,911 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1881822293] [2024-11-20 22:14:33,911 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:33,911 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:33,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:35,568 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 0 proven. 264 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:35,569 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:35,569 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1881822293] [2024-11-20 22:14:35,596 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1881822293] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:35,596 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1706450437] [2024-11-20 22:14:35,596 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-20 22:14:35,596 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:35,596 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:35,598 INFO L229 MonitoredProcess]: Starting monitored process 98 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:35,599 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (98)] Waiting until timeout for monitored process [2024-11-20 22:14:35,749 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-20 22:14:35,749 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:35,751 INFO L255 TraceCheckSpWp]: Trace formula consists of 541 conjuncts, 48 conjuncts are in the unsatisfiable core [2024-11-20 22:14:35,753 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:35,759 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2024-11-20 22:14:35,767 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:14:35,791 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:14:35,860 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 55 treesize of output 28 [2024-11-20 22:14:35,907 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:36,006 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 31 [2024-11-20 22:14:36,060 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:36,088 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:36,118 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:36,196 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 29 [2024-11-20 22:14:36,206 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:36,207 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2024-11-20 22:14:36,209 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 0 proven. 249 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2024-11-20 22:14:36,209 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:36,378 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 18 [2024-11-20 22:14:36,515 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 20 [2024-11-20 22:14:36,528 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 21 proven. 228 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2024-11-20 22:14:36,528 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1706450437] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:36,528 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:36,528 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 16, 16] total 37 [2024-11-20 22:14:36,528 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1998497105] [2024-11-20 22:14:36,528 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:36,529 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:36,529 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:36,529 INFO L85 PathProgramCache]: Analyzing trace with hash 522382643, now seen corresponding path program 8 times [2024-11-20 22:14:36,529 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:36,529 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1377758154] [2024-11-20 22:14:36,529 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:36,529 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:36,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:36,543 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:36,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:36,551 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:39,571 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:39,572 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 38 interpolants. [2024-11-20 22:14:39,572 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=106, Invalid=1300, Unknown=0, NotChecked=0, Total=1406 [2024-11-20 22:14:39,572 INFO L87 Difference]: Start difference. First operand 84 states and 87 transitions. cyclomatic complexity: 6 Second operand has 38 states, 37 states have (on average 2.5945945945945947) internal successors, (96), 38 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-20 22:14:41,385 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:41,385 INFO L93 Difference]: Finished difference Result 141 states and 146 transitions. [2024-11-20 22:14:41,385 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 141 states and 146 transitions. [2024-11-20 22:14:41,386 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 32 [2024-11-20 22:14:41,386 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 141 states to 91 states and 94 transitions. [2024-11-20 22:14:41,386 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 45 [2024-11-20 22:14:41,386 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 45 [2024-11-20 22:14:41,386 INFO L73 IsDeterministic]: Start isDeterministic. Operand 91 states and 94 transitions. [2024-11-20 22:14:41,387 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:41,387 INFO L218 hiAutomatonCegarLoop]: Abstraction has 91 states and 94 transitions. [2024-11-20 22:14:41,387 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states and 94 transitions. [2024-11-20 22:14:41,388 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 88. [2024-11-20 22:14:41,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 88 states have (on average 1.0340909090909092) internal successors, (91), 87 states have internal predecessors, (91), 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-20 22:14:41,388 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 91 transitions. [2024-11-20 22:14:41,388 INFO L240 hiAutomatonCegarLoop]: Abstraction has 88 states and 91 transitions. [2024-11-20 22:14:41,389 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 44 states. [2024-11-20 22:14:41,389 INFO L425 stractBuchiCegarLoop]: Abstraction has 88 states and 91 transitions. [2024-11-20 22:14:41,389 INFO L332 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2024-11-20 22:14:41,389 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 88 states and 91 transitions. [2024-11-20 22:14:41,389 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 32 [2024-11-20 22:14:41,389 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:41,389 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:41,390 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [13, 13, 13, 11, 2, 1, 1, 1, 1] [2024-11-20 22:14:41,390 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [8, 8, 8, 7, 1] [2024-11-20 22:14:41,390 INFO L745 eck$LassoCheckResult]: Stem: 5308#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 5309#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 5310#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 5296#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 5297#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5311#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5312#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5383#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5382#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5313#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5300#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5301#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5304#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5307#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5381#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5380#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5379#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5349#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5378#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5352#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5348#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5347#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5321#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5322#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 5305#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5306#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5377#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5376#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5375#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5374#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5373#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5372#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5371#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5370#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5369#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5368#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5367#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5366#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5365#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5364#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5363#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5362#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5361#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5360#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5359#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5358#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5357#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5356#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5355#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5351#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5354#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5353#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5350#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5314#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5315#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5316#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 5317#L556-2 [2024-11-20 22:14:41,391 INFO L747 eck$LassoCheckResult]: Loop: 5317#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5346#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5344#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5302#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5303#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5345#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5298#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5299#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5343#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5342#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5341#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5340#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5339#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5338#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5337#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5336#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5335#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5334#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5333#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5332#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5331#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5330#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5329#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5328#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5327#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5326#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5325#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5324#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5319#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5323#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5320#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5318#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 5317#L556-2 [2024-11-20 22:14:41,391 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:41,391 INFO L85 PathProgramCache]: Analyzing trace with hash 2003252123, now seen corresponding path program 17 times [2024-11-20 22:14:41,391 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:41,391 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [270969938] [2024-11-20 22:14:41,391 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:41,391 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:41,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:42,639 INFO L134 CoverageAnalysis]: Checked inductivity of 312 backedges. 22 proven. 290 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:42,640 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:42,640 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [270969938] [2024-11-20 22:14:42,640 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [270969938] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:42,640 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2086400532] [2024-11-20 22:14:42,640 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-20 22:14:42,641 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:42,641 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:42,643 INFO L229 MonitoredProcess]: Starting monitored process 99 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:42,644 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (99)] Waiting until timeout for monitored process [2024-11-20 22:14:42,925 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 13 check-sat command(s) [2024-11-20 22:14:42,925 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:42,929 INFO L255 TraceCheckSpWp]: Trace formula consists of 578 conjuncts, 56 conjuncts are in the unsatisfiable core [2024-11-20 22:14:42,933 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:42,936 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2024-11-20 22:14:42,970 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:14:43,001 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:14:43,034 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:14:43,100 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 55 treesize of output 28 [2024-11-20 22:14:43,143 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:43,210 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 31 [2024-11-20 22:14:43,248 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:43,257 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:43,265 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:43,273 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:43,314 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 29 [2024-11-20 22:14:43,321 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:43,323 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2024-11-20 22:14:43,324 INFO L134 CoverageAnalysis]: Checked inductivity of 312 backedges. 0 proven. 306 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-20 22:14:43,324 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:43,420 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 18 [2024-11-20 22:14:43,541 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 20 [2024-11-20 22:14:43,563 INFO L134 CoverageAnalysis]: Checked inductivity of 312 backedges. 16 proven. 290 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-20 22:14:43,563 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2086400532] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:43,564 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:43,564 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 18, 18] total 34 [2024-11-20 22:14:43,564 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1842794303] [2024-11-20 22:14:43,564 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:43,564 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:43,565 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:43,565 INFO L85 PathProgramCache]: Analyzing trace with hash 522382643, now seen corresponding path program 9 times [2024-11-20 22:14:43,566 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:43,566 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [926152347] [2024-11-20 22:14:43,566 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:43,566 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:43,577 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:43,577 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:43,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:43,585 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:46,720 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:46,720 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2024-11-20 22:14:46,721 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=101, Invalid=1089, Unknown=0, NotChecked=0, Total=1190 [2024-11-20 22:14:46,721 INFO L87 Difference]: Start difference. First operand 88 states and 91 transitions. cyclomatic complexity: 6 Second operand has 35 states, 34 states have (on average 2.764705882352941) internal successors, (94), 35 states have internal predecessors, (94), 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-20 22:14:48,319 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:48,319 INFO L93 Difference]: Finished difference Result 130 states and 134 transitions. [2024-11-20 22:14:48,319 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 130 states and 134 transitions. [2024-11-20 22:14:48,320 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 32 [2024-11-20 22:14:48,320 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 130 states to 95 states and 98 transitions. [2024-11-20 22:14:48,320 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 45 [2024-11-20 22:14:48,320 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 45 [2024-11-20 22:14:48,320 INFO L73 IsDeterministic]: Start isDeterministic. Operand 95 states and 98 transitions. [2024-11-20 22:14:48,320 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:48,321 INFO L218 hiAutomatonCegarLoop]: Abstraction has 95 states and 98 transitions. [2024-11-20 22:14:48,321 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states and 98 transitions. [2024-11-20 22:14:48,322 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 92. [2024-11-20 22:14:48,322 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 92 states have (on average 1.0326086956521738) internal successors, (95), 91 states have internal predecessors, (95), 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-20 22:14:48,322 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 95 transitions. [2024-11-20 22:14:48,322 INFO L240 hiAutomatonCegarLoop]: Abstraction has 92 states and 95 transitions. [2024-11-20 22:14:48,323 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 43 states. [2024-11-20 22:14:48,323 INFO L425 stractBuchiCegarLoop]: Abstraction has 92 states and 95 transitions. [2024-11-20 22:14:48,323 INFO L332 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2024-11-20 22:14:48,323 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 92 states and 95 transitions. [2024-11-20 22:14:48,324 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 32 [2024-11-20 22:14:48,324 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:48,324 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:48,324 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [14, 14, 14, 12, 2, 1, 1, 1, 1] [2024-11-20 22:14:48,324 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [8, 8, 8, 7, 1] [2024-11-20 22:14:48,324 INFO L745 eck$LassoCheckResult]: Stem: 5964#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 5965#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 5966#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 5952#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 5953#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5967#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5956#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5957#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5960#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5963#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5968#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6043#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6042#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6041#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6040#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6039#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6038#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6037#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6036#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6035#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6034#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6006#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6033#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6008#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6005#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5969#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5954#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5955#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 5961#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5962#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6032#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6031#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6030#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6029#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6028#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6027#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6026#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6025#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6024#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6023#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6022#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6021#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6020#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6019#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6018#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6017#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6016#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6015#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6014#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6013#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6012#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6011#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6010#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6004#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6009#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6007#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6003#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6002#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6001#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5970#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 5971#L556-2 [2024-11-20 22:14:48,325 INFO L747 eck$LassoCheckResult]: Loop: 5971#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6000#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5998#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5958#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5959#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5999#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5997#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5996#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5995#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5994#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5993#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5992#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5991#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5990#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5989#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5988#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5987#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5986#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5985#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5984#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5983#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5982#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5981#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5980#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5979#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5978#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5977#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5976#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5973#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5975#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5974#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5972#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 5971#L556-2 [2024-11-20 22:14:48,325 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:48,325 INFO L85 PathProgramCache]: Analyzing trace with hash 392765633, now seen corresponding path program 18 times [2024-11-20 22:14:48,325 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:48,325 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [829589520] [2024-11-20 22:14:48,325 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:48,325 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:48,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:49,507 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 22 proven. 342 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:49,507 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:49,507 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [829589520] [2024-11-20 22:14:49,507 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [829589520] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:49,507 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [300602099] [2024-11-20 22:14:49,507 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-20 22:14:49,507 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:49,508 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:49,509 INFO L229 MonitoredProcess]: Starting monitored process 100 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:49,510 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (100)] Waiting until timeout for monitored process [2024-11-20 22:14:49,811 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 14 check-sat command(s) [2024-11-20 22:14:49,811 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:14:49,814 INFO L255 TraceCheckSpWp]: Trace formula consists of 615 conjuncts, 71 conjuncts are in the unsatisfiable core [2024-11-20 22:14:49,821 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:49,823 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-11-20 22:14:49,826 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2024-11-20 22:14:49,845 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:14:49,874 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:14:49,901 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:14:49,930 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:14:49,988 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 44 treesize of output 28 [2024-11-20 22:14:50,049 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:50,102 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 31 [2024-11-20 22:14:50,136 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:50,144 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:50,150 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:50,166 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:50,184 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:14:50,221 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 45 treesize of output 29 [2024-11-20 22:14:50,272 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:50,273 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2024-11-20 22:14:50,274 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 0 proven. 363 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-20 22:14:50,275 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:50,410 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 18 [2024-11-20 22:14:50,768 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 54 proven. 309 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-20 22:14:50,769 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [300602099] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:50,769 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:50,769 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 20, 20] total 41 [2024-11-20 22:14:50,769 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2002449190] [2024-11-20 22:14:50,769 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:50,769 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:50,769 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:50,769 INFO L85 PathProgramCache]: Analyzing trace with hash 522382643, now seen corresponding path program 10 times [2024-11-20 22:14:50,769 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:50,769 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [340362806] [2024-11-20 22:14:50,770 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:50,770 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:50,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:50,781 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:50,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:50,789 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:14:53,861 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:14:53,862 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 42 interpolants. [2024-11-20 22:14:53,862 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=132, Invalid=1590, Unknown=0, NotChecked=0, Total=1722 [2024-11-20 22:14:53,862 INFO L87 Difference]: Start difference. First operand 92 states and 95 transitions. cyclomatic complexity: 6 Second operand has 42 states, 41 states have (on average 2.8780487804878048) internal successors, (118), 42 states have internal predecessors, (118), 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-20 22:14:55,776 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:14:55,776 INFO L93 Difference]: Finished difference Result 134 states and 138 transitions. [2024-11-20 22:14:55,776 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 134 states and 138 transitions. [2024-11-20 22:14:55,777 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 32 [2024-11-20 22:14:55,781 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 134 states to 99 states and 102 transitions. [2024-11-20 22:14:55,781 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 45 [2024-11-20 22:14:55,781 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 45 [2024-11-20 22:14:55,781 INFO L73 IsDeterministic]: Start isDeterministic. Operand 99 states and 102 transitions. [2024-11-20 22:14:55,782 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:14:55,782 INFO L218 hiAutomatonCegarLoop]: Abstraction has 99 states and 102 transitions. [2024-11-20 22:14:55,782 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states and 102 transitions. [2024-11-20 22:14:55,782 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 96. [2024-11-20 22:14:55,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 96 states have (on average 1.03125) internal successors, (99), 95 states have internal predecessors, (99), 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-20 22:14:55,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 99 transitions. [2024-11-20 22:14:55,783 INFO L240 hiAutomatonCegarLoop]: Abstraction has 96 states and 99 transitions. [2024-11-20 22:14:55,787 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 48 states. [2024-11-20 22:14:55,787 INFO L425 stractBuchiCegarLoop]: Abstraction has 96 states and 99 transitions. [2024-11-20 22:14:55,787 INFO L332 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2024-11-20 22:14:55,787 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 96 states and 99 transitions. [2024-11-20 22:14:55,788 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 32 [2024-11-20 22:14:55,788 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:14:55,788 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:14:55,788 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [15, 15, 15, 13, 2, 1, 1, 1, 1] [2024-11-20 22:14:55,788 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [8, 8, 8, 7, 1] [2024-11-20 22:14:55,788 INFO L745 eck$LassoCheckResult]: Stem: 6664#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 6665#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 6669#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 6655#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 6656#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6670#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6671#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6750#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6749#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6672#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6659#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6660#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6663#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6668#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6748#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6747#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6746#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6745#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6744#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6743#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6742#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6741#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6740#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6739#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6738#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6710#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6737#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6712#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6709#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6673#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6657#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6658#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 6666#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6667#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6736#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6735#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6734#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6733#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6732#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6731#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6730#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6729#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6728#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6727#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6726#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6725#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6724#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6723#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6722#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6721#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6720#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6719#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6718#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6717#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6716#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6715#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6714#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6708#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6713#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6711#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6707#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6706#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6705#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6674#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 6675#L556-2 [2024-11-20 22:14:55,789 INFO L747 eck$LassoCheckResult]: Loop: 6675#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6704#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6702#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6661#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6662#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6703#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6701#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6700#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6699#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6698#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6697#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6696#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6695#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6694#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6693#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6692#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6691#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6690#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6689#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6688#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6687#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6686#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6685#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6684#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6683#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6682#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6681#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6680#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6677#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6679#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6678#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6676#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 6675#L556-2 [2024-11-20 22:14:55,789 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:55,789 INFO L85 PathProgramCache]: Analyzing trace with hash -591131929, now seen corresponding path program 19 times [2024-11-20 22:14:55,789 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:55,789 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [567862666] [2024-11-20 22:14:55,789 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:55,789 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:55,816 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:56,982 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 58 proven. 362 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:56,982 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:14:56,982 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [567862666] [2024-11-20 22:14:56,982 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [567862666] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:14:56,982 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1204330403] [2024-11-20 22:14:56,983 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-20 22:14:56,983 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:14:56,983 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:14:56,984 INFO L229 MonitoredProcess]: Starting monitored process 101 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:14:56,986 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (101)] Waiting until timeout for monitored process [2024-11-20 22:14:57,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:14:57,175 INFO L255 TraceCheckSpWp]: Trace formula consists of 652 conjuncts, 62 conjuncts are in the unsatisfiable core [2024-11-20 22:14:57,179 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:14:57,197 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-11-20 22:14:57,232 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 19 [2024-11-20 22:14:57,270 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 19 [2024-11-20 22:14:57,305 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 19 [2024-11-20 22:14:57,339 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 19 [2024-11-20 22:14:57,378 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 19 [2024-11-20 22:14:57,411 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:14:57,476 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2024-11-20 22:14:57,565 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 3 [2024-11-20 22:14:57,594 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 50 treesize of output 34 [2024-11-20 22:14:57,660 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:14:57,698 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:14:57,742 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:14:57,783 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:14:57,825 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:14:57,864 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:14:57,900 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 16 [2024-11-20 22:14:57,902 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 12 [2024-11-20 22:14:57,926 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 60 proven. 360 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:57,926 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:14:58,341 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 51 treesize of output 35 [2024-11-20 22:14:58,691 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 56 proven. 364 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:14:58,691 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1204330403] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:14:58,692 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:14:58,692 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 24, 24] total 56 [2024-11-20 22:14:58,692 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [39854930] [2024-11-20 22:14:58,692 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:14:58,692 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:14:58,692 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:14:58,692 INFO L85 PathProgramCache]: Analyzing trace with hash 522382643, now seen corresponding path program 11 times [2024-11-20 22:14:58,692 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:14:58,692 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [507074983] [2024-11-20 22:14:58,692 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:14:58,692 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:14:58,706 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:58,706 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:14:58,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:14:58,714 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:15:01,697 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:15:01,698 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 57 interpolants. [2024-11-20 22:15:01,699 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=523, Invalid=2669, Unknown=0, NotChecked=0, Total=3192 [2024-11-20 22:15:01,699 INFO L87 Difference]: Start difference. First operand 96 states and 99 transitions. cyclomatic complexity: 6 Second operand has 57 states, 56 states have (on average 2.857142857142857) internal successors, (160), 57 states have internal predecessors, (160), 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-20 22:15:02,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:15:02,474 INFO L93 Difference]: Finished difference Result 124 states and 127 transitions. [2024-11-20 22:15:02,474 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 124 states and 127 transitions. [2024-11-20 22:15:02,475 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-20 22:15:02,475 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 124 states to 118 states and 121 transitions. [2024-11-20 22:15:02,475 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 53 [2024-11-20 22:15:02,476 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 53 [2024-11-20 22:15:02,476 INFO L73 IsDeterministic]: Start isDeterministic. Operand 118 states and 121 transitions. [2024-11-20 22:15:02,476 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:15:02,476 INFO L218 hiAutomatonCegarLoop]: Abstraction has 118 states and 121 transitions. [2024-11-20 22:15:02,476 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 118 states and 121 transitions. [2024-11-20 22:15:02,477 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 118 to 112. [2024-11-20 22:15:02,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 112 states have (on average 1.0267857142857142) internal successors, (115), 111 states have internal predecessors, (115), 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-20 22:15:02,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 115 transitions. [2024-11-20 22:15:02,477 INFO L240 hiAutomatonCegarLoop]: Abstraction has 112 states and 115 transitions. [2024-11-20 22:15:02,478 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 37 states. [2024-11-20 22:15:02,478 INFO L425 stractBuchiCegarLoop]: Abstraction has 112 states and 115 transitions. [2024-11-20 22:15:02,478 INFO L332 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2024-11-20 22:15:02,478 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 112 states and 115 transitions. [2024-11-20 22:15:02,478 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-20 22:15:02,478 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:15:02,479 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:15:02,479 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [17, 17, 17, 15, 2, 1, 1, 1, 1] [2024-11-20 22:15:02,479 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 10, 9, 1] [2024-11-20 22:15:02,479 INFO L745 eck$LassoCheckResult]: Stem: 7368#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 7369#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 7373#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 7359#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 7360#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7374#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7363#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7364#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7367#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7372#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7375#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7470#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7469#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7468#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7467#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7466#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7465#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7464#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7463#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7462#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7461#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7460#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7459#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7458#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7457#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7421#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7425#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7423#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7420#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7376#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7361#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7362#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 7370#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7371#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7456#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7455#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7454#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7453#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7452#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7451#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7450#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7449#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7448#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7447#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7446#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7445#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7444#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7443#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7442#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7441#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7440#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7439#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7438#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7437#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7436#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7435#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7434#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7433#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7432#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7431#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7430#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7429#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7428#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7427#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7426#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7419#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7424#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7422#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7418#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7417#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7416#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7377#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 7378#L556-2 [2024-11-20 22:15:02,480 INFO L747 eck$LassoCheckResult]: Loop: 7378#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7415#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7413#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7365#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7366#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7414#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7412#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7411#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7410#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7409#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7408#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7407#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7406#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7405#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7404#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7403#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7402#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7401#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7400#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7399#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7398#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7397#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7396#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7395#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7394#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7393#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7392#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7391#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7390#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7389#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7388#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7387#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7386#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7385#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7384#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7383#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7380#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7382#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7381#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7379#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 7378#L556-2 [2024-11-20 22:15:02,480 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:15:02,480 INFO L85 PathProgramCache]: Analyzing trace with hash -1053051853, now seen corresponding path program 20 times [2024-11-20 22:15:02,480 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:15:02,480 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1311182342] [2024-11-20 22:15:02,480 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:15:02,480 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:15:02,506 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:15:03,950 INFO L134 CoverageAnalysis]: Checked inductivity of 544 backedges. 4 proven. 536 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2024-11-20 22:15:03,950 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:15:03,951 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1311182342] [2024-11-20 22:15:03,951 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1311182342] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:15:03,951 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1381920982] [2024-11-20 22:15:03,951 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-20 22:15:03,951 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:15:03,951 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:15:03,953 INFO L229 MonitoredProcess]: Starting monitored process 102 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:15:03,955 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (102)] Waiting until timeout for monitored process [2024-11-20 22:15:04,165 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-20 22:15:04,165 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:15:04,168 INFO L255 TraceCheckSpWp]: Trace formula consists of 726 conjuncts, 77 conjuncts are in the unsatisfiable core [2024-11-20 22:15:04,171 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:15:04,173 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2024-11-20 22:15:04,181 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:15:04,189 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:15:04,196 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:15:04,204 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:15:04,242 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 55 treesize of output 28 [2024-11-20 22:15:04,283 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 19 [2024-11-20 22:15:04,322 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:15:04,496 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 30 treesize of output 18 [2024-11-20 22:15:04,537 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 70 treesize of output 50 [2024-11-20 22:15:04,585 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:15:04,593 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:15:04,602 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:15:04,612 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:15:04,619 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 32 treesize of output 20 [2024-11-20 22:15:04,664 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 29 [2024-11-20 22:15:04,671 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:15:04,673 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2024-11-20 22:15:04,676 INFO L134 CoverageAnalysis]: Checked inductivity of 544 backedges. 9 proven. 529 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-20 22:15:04,676 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:15:04,952 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 39 treesize of output 27 [2024-11-20 22:15:05,210 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 54 treesize of output 38 [2024-11-20 22:15:05,245 INFO L134 CoverageAnalysis]: Checked inductivity of 544 backedges. 24 proven. 514 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-20 22:15:05,246 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1381920982] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:15:05,246 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:15:05,246 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 24, 24] total 42 [2024-11-20 22:15:05,246 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1625589024] [2024-11-20 22:15:05,246 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:15:05,246 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:15:05,246 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:15:05,246 INFO L85 PathProgramCache]: Analyzing trace with hash 870943359, now seen corresponding path program 12 times [2024-11-20 22:15:05,247 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:15:05,247 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [566535959] [2024-11-20 22:15:05,247 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:15:05,247 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:15:05,261 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:15:05,261 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:15:05,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:15:05,276 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:15:12,425 WARN L286 SmtUtils]: Spent 7.14s on a formula simplification. DAG size of input: 346 DAG size of output: 258 (called from [L 276] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.cfg.transitions.TransFormulaUtils.sequentialComposition) [2024-11-20 22:15:12,597 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:15:12,597 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2024-11-20 22:15:12,598 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=138, Invalid=1668, Unknown=0, NotChecked=0, Total=1806 [2024-11-20 22:15:12,598 INFO L87 Difference]: Start difference. First operand 112 states and 115 transitions. cyclomatic complexity: 6 Second operand has 43 states, 42 states have (on average 2.5952380952380953) internal successors, (109), 43 states have internal predecessors, (109), 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-20 22:15:14,209 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:15:14,209 INFO L93 Difference]: Finished difference Result 162 states and 166 transitions. [2024-11-20 22:15:14,209 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 162 states and 166 transitions. [2024-11-20 22:15:14,210 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-20 22:15:14,210 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 162 states to 119 states and 122 transitions. [2024-11-20 22:15:14,210 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 53 [2024-11-20 22:15:14,210 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 53 [2024-11-20 22:15:14,210 INFO L73 IsDeterministic]: Start isDeterministic. Operand 119 states and 122 transitions. [2024-11-20 22:15:14,211 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:15:14,211 INFO L218 hiAutomatonCegarLoop]: Abstraction has 119 states and 122 transitions. [2024-11-20 22:15:14,211 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states and 122 transitions. [2024-11-20 22:15:14,212 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 116. [2024-11-20 22:15:14,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 116 states, 116 states have (on average 1.0258620689655173) internal successors, (119), 115 states have internal predecessors, (119), 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-20 22:15:14,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 119 transitions. [2024-11-20 22:15:14,212 INFO L240 hiAutomatonCegarLoop]: Abstraction has 116 states and 119 transitions. [2024-11-20 22:15:14,213 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 38 states. [2024-11-20 22:15:14,213 INFO L425 stractBuchiCegarLoop]: Abstraction has 116 states and 119 transitions. [2024-11-20 22:15:14,213 INFO L332 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2024-11-20 22:15:14,214 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 116 states and 119 transitions. [2024-11-20 22:15:14,214 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-20 22:15:14,214 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:15:14,214 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:15:14,214 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [18, 18, 18, 16, 2, 1, 1, 1, 1] [2024-11-20 22:15:14,215 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 10, 9, 1] [2024-11-20 22:15:14,215 INFO L745 eck$LassoCheckResult]: Stem: 8172#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 8173#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 8177#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 8163#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 8164#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8178#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8179#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8278#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8277#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8180#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8167#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8168#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8171#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8176#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8276#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8275#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8274#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8273#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8272#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8271#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8270#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8269#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8268#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8267#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8266#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8265#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8264#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8263#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8262#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8226#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8261#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8228#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8225#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8181#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8165#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8166#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 8174#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8175#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8260#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8259#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8258#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8257#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8256#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8255#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8254#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8253#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8252#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8251#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8250#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8249#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8248#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8247#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8246#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8245#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8244#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8243#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8242#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8241#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8240#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8239#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8238#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8237#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8236#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8235#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8234#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8233#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8232#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8231#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8230#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8224#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8229#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8227#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8223#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8222#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8221#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8182#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 8183#L556-2 [2024-11-20 22:15:14,215 INFO L747 eck$LassoCheckResult]: Loop: 8183#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8220#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8218#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8169#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8170#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8219#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8217#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8216#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8215#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8214#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8213#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8212#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8211#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8210#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8209#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8208#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8207#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8206#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8205#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8204#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8203#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8202#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8201#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8200#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8199#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8198#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8197#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8196#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8195#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8194#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8193#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8192#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8191#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8190#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8189#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8188#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 8185#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 8187#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 8186#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 8184#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 8183#L556-2 [2024-11-20 22:15:14,215 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:15:14,215 INFO L85 PathProgramCache]: Analyzing trace with hash 2063242585, now seen corresponding path program 21 times [2024-11-20 22:15:14,215 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:15:14,216 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1350777194] [2024-11-20 22:15:14,216 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:15:14,216 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:15:14,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:15:16,018 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 31 proven. 581 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-20 22:15:16,019 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:15:16,019 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1350777194] [2024-11-20 22:15:16,019 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1350777194] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:15:16,019 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2002167131] [2024-11-20 22:15:16,019 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-20 22:15:16,019 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:15:16,019 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:15:16,021 INFO L229 MonitoredProcess]: Starting monitored process 103 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:15:16,022 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (103)] Waiting until timeout for monitored process [2024-11-20 22:15:16,371 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 14 check-sat command(s) [2024-11-20 22:15:16,371 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:15:16,373 INFO L255 TraceCheckSpWp]: Trace formula consists of 615 conjuncts, 83 conjuncts are in the unsatisfiable core [2024-11-20 22:15:16,377 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:15:16,474 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 1 [2024-11-20 22:15:16,516 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 19 [2024-11-20 22:15:16,560 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 42 treesize of output 19 [2024-11-20 22:15:16,600 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 13 [2024-11-20 22:15:16,718 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2024-11-20 22:15:16,859 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 23 treesize of output 3 [2024-11-20 22:15:17,024 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 48 treesize of output 21 [2024-11-20 22:15:17,203 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 59 treesize of output 28 [2024-11-20 22:15:17,387 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 59 treesize of output 28 [2024-11-20 22:15:17,589 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 59 treesize of output 28 [2024-11-20 22:15:17,677 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 69 treesize of output 45 [2024-11-20 22:15:17,779 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:15:17,832 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:15:17,888 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:15:17,943 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 49 treesize of output 22 [2024-11-20 22:15:17,993 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 16 [2024-11-20 22:15:17,995 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 24 treesize of output 12 [2024-11-20 22:15:18,028 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 115 proven. 457 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2024-11-20 22:15:18,029 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-20 22:15:19,520 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 51 treesize of output 35 [2024-11-20 22:15:19,853 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 15 proven. 557 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2024-11-20 22:15:19,853 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2002167131] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-20 22:15:19,853 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-20 22:15:19,853 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 31, 31] total 81 [2024-11-20 22:15:19,853 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [169775098] [2024-11-20 22:15:19,853 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-20 22:15:19,853 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-20 22:15:19,854 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:15:19,854 INFO L85 PathProgramCache]: Analyzing trace with hash 870943359, now seen corresponding path program 13 times [2024-11-20 22:15:19,854 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:15:19,854 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1277378644] [2024-11-20 22:15:19,854 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:15:19,854 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:15:19,883 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:15:19,884 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-20 22:15:19,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-20 22:15:19,904 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-20 22:15:26,861 WARN L286 SmtUtils]: Spent 6.95s on a formula simplification. DAG size of input: 346 DAG size of output: 258 (called from [L 276] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.cfg.transitions.TransFormulaUtils.sequentialComposition) [2024-11-20 22:15:26,998 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-20 22:15:26,999 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 82 interpolants. [2024-11-20 22:15:27,000 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1051, Invalid=5591, Unknown=0, NotChecked=0, Total=6642 [2024-11-20 22:15:27,000 INFO L87 Difference]: Start difference. First operand 116 states and 119 transitions. cyclomatic complexity: 6 Second operand has 82 states, 81 states have (on average 2.345679012345679) internal successors, (190), 82 states have internal predecessors, (190), 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-20 22:15:30,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-20 22:15:30,887 INFO L93 Difference]: Finished difference Result 227 states and 232 transitions. [2024-11-20 22:15:30,887 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 227 states and 232 transitions. [2024-11-20 22:15:30,888 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 64 [2024-11-20 22:15:30,888 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 227 states to 209 states and 214 transitions. [2024-11-20 22:15:30,888 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 85 [2024-11-20 22:15:30,888 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 85 [2024-11-20 22:15:30,888 INFO L73 IsDeterministic]: Start isDeterministic. Operand 209 states and 214 transitions. [2024-11-20 22:15:30,889 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-20 22:15:30,889 INFO L218 hiAutomatonCegarLoop]: Abstraction has 209 states and 214 transitions. [2024-11-20 22:15:30,889 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 209 states and 214 transitions. [2024-11-20 22:15:30,890 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 209 to 164. [2024-11-20 22:15:30,896 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 164 states, 164 states have (on average 1.0182926829268293) internal successors, (167), 163 states have internal predecessors, (167), 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-20 22:15:30,896 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 164 states to 164 states and 167 transitions. [2024-11-20 22:15:30,896 INFO L240 hiAutomatonCegarLoop]: Abstraction has 164 states and 167 transitions. [2024-11-20 22:15:30,900 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 100 states. [2024-11-20 22:15:30,901 INFO L425 stractBuchiCegarLoop]: Abstraction has 164 states and 167 transitions. [2024-11-20 22:15:30,901 INFO L332 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2024-11-20 22:15:30,901 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 164 states and 167 transitions. [2024-11-20 22:15:30,901 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 64 [2024-11-20 22:15:30,901 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-20 22:15:30,901 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-20 22:15:30,902 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [24, 24, 24, 22, 2, 1, 1, 1, 1] [2024-11-20 22:15:30,902 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [16, 16, 16, 15, 1] [2024-11-20 22:15:30,902 INFO L745 eck$LassoCheckResult]: Stem: 9208#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 9209#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~malloc2#1.base, main_#t~malloc2#1.offset, main_#t~malloc3#1.base, main_#t~malloc3#1.offset, main_#t~nondet4#1, main_#t~nondet5#1, main_#t~mem6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~short9#1, main_#t~malloc10#1.base, main_#t~malloc10#1.offset, main_#t~mem11#1, main_#t~mem12#1, main_#t~mem13#1, main_#t~nondet14#1, main_#t~short15#1, main_#t~mem16#1, main_#t~mem17#1, main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, main_~id~0#1.base, main_~id~0#1.offset, main_~maxId~0#1.base, main_~maxId~0#1.offset;call main_#t~malloc2#1.base, main_#t~malloc2#1.offset := #Ultimate.allocOnStack(4);main_~id~0#1.base, main_~id~0#1.offset := main_#t~malloc2#1.base, main_#t~malloc2#1.offset;call main_#t~malloc3#1.base, main_#t~malloc3#1.offset := #Ultimate.allocOnStack(4);main_~maxId~0#1.base, main_~maxId~0#1.offset := main_#t~malloc3#1.base, main_#t~malloc3#1.offset;havoc main_#t~nondet4#1;call write~int#0(main_#t~nondet4#1, main_~id~0#1.base, main_~id~0#1.offset, 4);havoc main_#t~nondet4#1;havoc main_#t~nondet5#1;call write~int#2(main_#t~nondet5#1, main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);havoc main_#t~nondet5#1;call main_#t~mem6#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 9213#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 9199#L552-2 assume main_#t~short9#1;havoc main_#t~mem6#1;havoc main_#t~mem7#1;havoc main_#t~mem8#1;havoc main_#t~short9#1;call main_#t~malloc10#1.base, main_#t~malloc10#1.offset := #Ultimate.allocOnStack(4);main_~tmp~0#1.base, main_~tmp~0#1.offset := main_#t~malloc10#1.base, main_#t~malloc10#1.offset;call main_#t~mem11#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#1(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 9200#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9214#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9215#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9362#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9361#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9216#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9203#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9204#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9207#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9212#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9360#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9359#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9358#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9357#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9356#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9355#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9354#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9353#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9352#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9351#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9350#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9349#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9348#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9347#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9346#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9343#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9345#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9344#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9342#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9217#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9201#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9202#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 9210#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9211#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9341#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9340#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9339#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9338#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9337#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9336#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9335#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9334#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9333#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9332#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9331#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9330#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9329#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9328#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9327#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9326#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9325#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9324#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9323#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9322#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9321#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9320#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9319#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9318#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9317#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9316#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9315#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9314#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9313#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9312#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9311#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9310#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9309#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9308#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9307#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9306#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9305#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9304#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9303#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9302#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9301#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9300#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9299#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9298#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9297#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9296#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9295#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9294#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9293#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9292#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9291#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9290#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9289#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9288#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9287#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9284#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9286#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9285#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9283#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9282#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9281#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9280#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 9219#L556-2 [2024-11-20 22:15:30,903 INFO L747 eck$LassoCheckResult]: Loop: 9219#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9278#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9276#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9205#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9206#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9279#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9277#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9275#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9274#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9273#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9272#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9271#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9270#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9269#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9268#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9267#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9266#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9265#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9264#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9263#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9262#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9261#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9260#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9259#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9258#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9257#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9256#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9255#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9254#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9253#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9252#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9251#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9250#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9249#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9248#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9247#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9246#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9245#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9244#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9243#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9242#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9241#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9240#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9239#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9238#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9237#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9236#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9235#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9234#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9233#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9232#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9231#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9230#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9229#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9228#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9227#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9226#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9225#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9224#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9223#L556 assume main_#t~mem16#1 < main_#t~mem17#1;havoc main_#t~mem16#1;havoc main_#t~mem17#1;call main_#t~mem18#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#1(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 9220#L556-2 call main_#t~mem12#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#0(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 9222#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 9221#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#1(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#2(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 9218#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#1(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 9219#L556-2 [2024-11-20 22:15:30,903 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-20 22:15:30,903 INFO L85 PathProgramCache]: Analyzing trace with hash 1610200893, now seen corresponding path program 22 times [2024-11-20 22:15:30,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-20 22:15:30,904 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1262767515] [2024-11-20 22:15:30,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-20 22:15:30,904 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-20 22:15:30,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-20 22:15:33,169 INFO L134 CoverageAnalysis]: Checked inductivity of 1104 backedges. 4 proven. 1040 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2024-11-20 22:15:33,169 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-20 22:15:33,169 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1262767515] [2024-11-20 22:15:33,169 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1262767515] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-20 22:15:33,169 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [111742131] [2024-11-20 22:15:33,170 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-20 22:15:33,170 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-20 22:15:33,170 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-20 22:15:33,172 INFO L229 MonitoredProcess]: Starting monitored process 104 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-20 22:15:33,173 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (104)] Waiting until timeout for monitored process [2024-11-20 22:15:33,446 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-20 22:15:33,446 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-20 22:15:33,453 INFO L255 TraceCheckSpWp]: Trace formula consists of 985 conjuncts, 80 conjuncts are in the unsatisfiable core [2024-11-20 22:15:33,457 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-20 22:15:33,459 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 13 [2024-11-20 22:15:33,466 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:15:33,474 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19 [2024-11-20 22:15:33,481 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 31 treesize of output 19