./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/termination-memory-alloca/GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version c7c6ca5d Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i ../sv-benchmarks/c/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-?-c7c6ca5-m [2024-11-09 15:23:53,871 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-09 15:23:53,928 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-Automizer_Default.epf [2024-11-09 15:23:53,933 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-09 15:23:53,934 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-09 15:23:53,957 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-09 15:23:53,958 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-09 15:23:53,958 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-09 15:23:53,959 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-09 15:23:53,962 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-09 15:23:53,962 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-09 15:23:53,962 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-09 15:23:53,963 INFO L153 SettingsManager]: * Use SBE=true [2024-11-09 15:23:53,963 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-11-09 15:23:53,963 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-11-09 15:23:53,963 INFO L153 SettingsManager]: * Use old map elimination=false [2024-11-09 15:23:53,963 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-11-09 15:23:53,963 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-11-09 15:23:53,964 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-11-09 15:23:53,964 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-09 15:23:53,964 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-11-09 15:23:53,966 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-09 15:23:53,966 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-09 15:23:53,967 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-11-09 15:23:53,967 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-11-09 15:23:53,967 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-11-09 15:23:53,967 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-09 15:23:53,967 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-11-09 15:23:53,967 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-09 15:23:53,968 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-11-09 15:23:53,968 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-09 15:23:53,968 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-09 15:23:53,968 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-09 15:23:53,969 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-09 15:23:53,969 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-09 15:23:53,970 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-11-09 15:23:53,970 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-09 15:23:54,176 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-09 15:23:54,195 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-09 15:23:54,197 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-09 15:23:54,198 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-09 15:23:54,198 INFO L274 PluginConnector]: CDTParser initialized [2024-11-09 15:23:54,199 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/termination-memory-alloca/GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i [2024-11-09 15:23:55,442 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-09 15:23:55,601 INFO L384 CDTParser]: Found 1 translation units. [2024-11-09 15:23:55,602 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-memory-alloca/GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i [2024-11-09 15:23:55,614 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b56f64388/305cce5add324e35972193b79287cc48/FLAGacc803819 [2024-11-09 15:23:55,625 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b56f64388/305cce5add324e35972193b79287cc48 [2024-11-09 15:23:55,626 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-09 15:23:55,627 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-09 15:23:55,628 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-09 15:23:55,629 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-09 15:23:55,632 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-09 15:23:55,633 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:55,633 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@55ce7cf1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55, skipping insertion in model container [2024-11-09 15:23:55,634 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:55,663 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-09 15:23:55,888 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-09 15:23:55,906 INFO L200 MainTranslator]: Completed pre-run [2024-11-09 15:23:55,936 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-09 15:23:55,978 INFO L204 MainTranslator]: Completed translation [2024-11-09 15:23:55,978 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55 WrapperNode [2024-11-09 15:23:55,978 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-09 15:23:55,979 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-09 15:23:55,979 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-09 15:23:55,980 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-09 15:23:55,985 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,009 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,028 INFO L138 Inliner]: procedures = 110, calls = 24, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 76 [2024-11-09 15:23:56,028 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-09 15:23:56,028 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-09 15:23:56,029 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-09 15:23:56,029 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-09 15:23:56,036 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,036 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,038 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,047 INFO L175 MemorySlicer]: Split 14 memory accesses to 3 slices as follows [3, 5, 6]. 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, 1, 3]. [2024-11-09 15:23:56,047 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,047 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,054 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,056 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,057 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,058 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,059 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-09 15:23:56,060 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-09 15:23:56,060 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-09 15:23:56,060 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-09 15:23:56,061 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (1/1) ... [2024-11-09 15:23:56,067 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:56,075 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:56,091 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-09 15:23:56,093 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-09 15:23:56,128 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-11-09 15:23:56,129 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-11-09 15:23:56,129 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2024-11-09 15:23:56,130 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-11-09 15:23:56,130 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-11-09 15:23:56,130 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-11-09 15:23:56,130 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-11-09 15:23:56,130 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-11-09 15:23:56,130 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-09 15:23:56,130 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-09 15:23:56,216 INFO L238 CfgBuilder]: Building ICFG [2024-11-09 15:23:56,219 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-09 15:23:56,347 INFO L? ?]: Removed 11 outVars from TransFormulas that were not future-live. [2024-11-09 15:23:56,347 INFO L287 CfgBuilder]: Performing block encoding [2024-11-09 15:23:56,355 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-09 15:23:56,355 INFO L316 CfgBuilder]: Removed 1 assume(true) statements. [2024-11-09 15:23:56,355 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.11 03:23:56 BoogieIcfgContainer [2024-11-09 15:23:56,355 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-09 15:23:56,356 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-11-09 15:23:56,356 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-11-09 15:23:56,359 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-11-09 15:23:56,359 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-09 15:23:56,359 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 09.11 03:23:55" (1/3) ... [2024-11-09 15:23:56,360 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@24764841 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 09.11 03:23:56, skipping insertion in model container [2024-11-09 15:23:56,360 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-09 15:23:56,360 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:23:55" (2/3) ... [2024-11-09 15:23:56,360 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@24764841 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 09.11 03:23:56, skipping insertion in model container [2024-11-09 15:23:56,361 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-09 15:23:56,361 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.11 03:23:56" (3/3) ... [2024-11-09 15:23:56,361 INFO L332 chiAutomizerObserver]: Analyzing ICFG GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i [2024-11-09 15:23:56,396 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-11-09 15:23:56,396 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-11-09 15:23:56,396 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-11-09 15:23:56,397 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-11-09 15:23:56,397 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-11-09 15:23:56,397 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-11-09 15:23:56,397 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-11-09 15:23:56,397 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-11-09 15:23:56,399 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-09 15:23:56,410 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:23:56,410 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:23:56,410 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:23:56,413 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2024-11-09 15:23:56,413 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-09 15:23:56,414 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-11-09 15:23:56,414 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-09 15:23:56,414 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:23:56,415 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:23:56,415 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:23:56,415 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2024-11-09 15:23:56,415 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-09 15:23:56,420 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#1(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#0(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#1(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(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-09 15:23:56,420 INFO L747 eck$LassoCheckResult]: Loop: 6#L556-2true call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 6#L556-2true [2024-11-09 15:23:56,424 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:23:56,424 INFO L85 PathProgramCache]: Analyzing trace with hash 925671, now seen corresponding path program 1 times [2024-11-09 15:23:56,430 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:23:56,430 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1570887896] [2024-11-09 15:23:56,430 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:23:56,431 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:23:56,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:23:56,603 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-09 15:23:56,604 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:23:56,604 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1570887896] [2024-11-09 15:23:56,605 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1570887896] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 15:23:56,605 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 15:23:56,605 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-11-09 15:23:56,606 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1434841275] [2024-11-09 15:23:56,607 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 15:23:56,610 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:23:56,610 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:23:56,610 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 1 times [2024-11-09 15:23:56,611 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:23:56,611 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [506614903] [2024-11-09 15:23:56,611 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:23:56,611 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:23:56,630 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:23:56,630 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:23:56,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:23:56,659 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:23:56,904 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:23:56,927 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-09 15:23:56,928 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-09 15:23:56,929 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-09 15:23:56,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:23:56,947 INFO L93 Difference]: Finished difference Result 14 states and 18 transitions. [2024-11-09 15:23:56,948 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 14 states and 18 transitions. [2024-11-09 15:23:56,949 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:23:56,958 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 14 states to 8 states and 10 transitions. [2024-11-09 15:23:56,959 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 8 [2024-11-09 15:23:56,959 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 8 [2024-11-09 15:23:56,960 INFO L73 IsDeterministic]: Start isDeterministic. Operand 8 states and 10 transitions. [2024-11-09 15:23:56,960 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-11-09 15:23:56,960 INFO L218 hiAutomatonCegarLoop]: Abstraction has 8 states and 10 transitions. [2024-11-09 15:23:56,975 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 8 states and 10 transitions. [2024-11-09 15:23:56,981 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 8 to 8. [2024-11-09 15:23:56,982 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-09 15:23:56,982 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 10 transitions. [2024-11-09 15:23:56,983 INFO L240 hiAutomatonCegarLoop]: Abstraction has 8 states and 10 transitions. [2024-11-09 15:23:56,984 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-09 15:23:56,989 INFO L425 stractBuchiCegarLoop]: Abstraction has 8 states and 10 transitions. [2024-11-09 15:23:56,989 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-11-09 15:23:56,989 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 8 states and 10 transitions. [2024-11-09 15:23:56,989 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:23:56,990 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:23:56,991 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:23:56,991 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2024-11-09 15:23:56,991 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-09 15:23:56,991 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#1(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#0(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#1(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(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-09 15:23:56,991 INFO L747 eck$LassoCheckResult]: Loop: 37#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 37#L556-2 [2024-11-09 15:23:56,992 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:23:56,992 INFO L85 PathProgramCache]: Analyzing trace with hash 925609, now seen corresponding path program 1 times [2024-11-09 15:23:56,994 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:23:56,994 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1992108851] [2024-11-09 15:23:56,994 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:23:56,994 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:23:57,028 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:23:57,029 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:23:57,043 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:23:57,049 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:23:57,051 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:23:57,051 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 2 times [2024-11-09 15:23:57,051 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:23:57,051 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [583469062] [2024-11-09 15:23:57,052 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:23:57,052 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:23:57,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:23:57,062 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:23:57,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:23:57,069 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:23:57,071 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:23:57,071 INFO L85 PathProgramCache]: Analyzing trace with hash 121353169, now seen corresponding path program 1 times [2024-11-09 15:23:57,071 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:23:57,072 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1524706465] [2024-11-09 15:23:57,072 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:23:57,072 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:23:57,108 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:23:57,108 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:23:57,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:23:57,126 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:23:57,824 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:23:57,825 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:23:57,825 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:23:57,825 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:23:57,825 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-09 15:23:57,825 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:57,826 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:23:57,826 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:23:57,826 INFO L132 ssoRankerPreferences]: Filename of dumped script: GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i_Iteration2_Lasso [2024-11-09 15:23:57,826 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:23:57,826 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:23:57,840 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,845 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,847 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,849 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,851 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,854 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,858 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,861 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,862 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,868 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,870 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,872 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,873 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,876 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:57,878 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:58,264 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:58,266 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:58,268 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:58,271 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:58,273 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:23:58,603 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:23:58,607 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-09 15:23:58,608 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,608 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,611 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-09 15:23:58,612 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-09 15:23:58,614 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:23:58,624 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,625 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,625 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,625 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,626 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,627 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,628 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,629 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,641 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-09 15:23:58,641 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,641 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,643 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-09 15:23:58,644 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-09 15:23:58,645 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:23:58,656 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,656 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,656 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,657 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,657 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,658 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,658 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,660 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,673 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-09 15:23:58,673 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,673 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,675 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-09 15:23:58,676 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-09 15:23:58,677 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:23:58,687 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,687 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,687 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,687 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,687 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,688 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,688 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,689 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,700 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Forceful destruction successful, exit code 0 [2024-11-09 15:23:58,701 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,701 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,702 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-09 15:23:58,703 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-09 15:23:58,704 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:23:58,713 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,714 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,714 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,714 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,714 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,714 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,714 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,716 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,726 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-09 15:23:58,727 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,727 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,729 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-09 15:23:58,730 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-09 15:23:58,731 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:23:58,741 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,741 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,741 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,741 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,743 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:23:58,743 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:23:58,746 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,758 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2024-11-09 15:23:58,758 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,758 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,760 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-09 15:23:58,761 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-09 15:23:58,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-09 15:23:58,772 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,772 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,772 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,772 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,772 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,773 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,773 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,774 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,789 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-09 15:23:58,789 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,789 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,791 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-09 15:23:58,792 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-09 15:23:58,793 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:23:58,803 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,803 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,803 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,803 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,803 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,804 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,804 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,805 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,815 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Forceful destruction successful, exit code 0 [2024-11-09 15:23:58,816 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,816 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,817 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-09 15:23:58,819 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-09 15:23:58,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-09 15:23:58,830 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,830 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,830 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,830 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,830 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,831 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,831 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,832 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,842 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Ended with exit code 0 [2024-11-09 15:23:58,842 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,843 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,844 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-09 15:23:58,845 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-09 15:23:58,846 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:23:58,855 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,855 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,856 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,856 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,856 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,856 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,856 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,859 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,869 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Ended with exit code 0 [2024-11-09 15:23:58,870 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,870 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,872 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-09 15:23:58,873 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-09 15:23:58,874 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:23:58,884 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,884 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,884 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,884 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,884 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,885 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,885 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,886 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,895 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-09 15:23:58,896 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,896 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,897 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-09 15:23:58,898 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-09 15:23:58,899 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:23:58,908 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,908 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,908 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,909 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,909 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,909 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,909 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,910 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,920 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Ended with exit code 0 [2024-11-09 15:23:58,921 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,921 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,922 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-09 15:23:58,923 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-09 15:23:58,924 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:23:58,933 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,933 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,934 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,934 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,934 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,934 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,934 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,935 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,945 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-09 15:23:58,945 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,946 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,946 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-09 15:23:58,947 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-09 15:23:58,948 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:23:58,958 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,958 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,958 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,958 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,960 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:23:58,960 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:23:58,963 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:58,973 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-09 15:23:58,974 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:58,974 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:58,975 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-09 15:23:58,976 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-09 15:23:58,977 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:23:58,987 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:58,988 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:23:58,988 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:58,988 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:58,988 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:58,989 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:23:58,989 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:23:58,990 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:59,000 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-09 15:23:59,002 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:59,003 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:59,004 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-09 15:23:59,006 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:23:59,006 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-09 15:23:59,017 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:59,017 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:59,017 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:59,017 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:59,020 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:23:59,020 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:23:59,025 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:59,035 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Forceful destruction successful, exit code 0 [2024-11-09 15:23:59,036 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:59,036 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:59,037 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-09 15:23:59,038 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-09 15:23:59,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-09 15:23:59,049 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:59,049 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:59,049 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:59,049 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:59,051 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:23:59,052 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:23:59,055 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:59,066 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Ended with exit code 0 [2024-11-09 15:23:59,066 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:59,067 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:59,068 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-09 15:23:59,069 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-09 15:23:59,070 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:23:59,079 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:59,080 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:59,080 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:59,080 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:59,082 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:23:59,082 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:23:59,088 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:59,100 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Ended with exit code 0 [2024-11-09 15:23:59,100 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:59,101 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:59,102 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-09 15:23:59,104 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-09 15:23:59,105 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:23:59,115 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:59,115 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:59,115 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:59,115 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:59,118 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:23:59,118 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:23:59,121 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:59,131 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Forceful destruction successful, exit code 0 [2024-11-09 15:23:59,131 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:59,132 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:59,133 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-09 15:23:59,137 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-09 15:23:59,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-09 15:23:59,147 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:59,147 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:59,147 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:59,147 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:59,149 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:23:59,149 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:23:59,154 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:59,167 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Ended with exit code 0 [2024-11-09 15:23:59,168 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:59,168 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:59,169 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-09 15:23:59,171 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-09 15:23:59,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-09 15:23:59,181 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:59,181 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:59,181 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:59,181 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:59,185 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:23:59,186 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:23:59,192 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:59,206 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-09 15:23:59,207 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:59,207 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:59,209 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-09 15:23:59,209 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-09 15:23:59,210 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:23:59,220 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:59,220 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:59,220 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:23:59,220 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:59,223 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:23:59,223 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:23:59,228 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:23:59,239 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Ended with exit code 0 [2024-11-09 15:23:59,240 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:59,240 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:59,241 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-09 15:23:59,242 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-09 15:23:59,243 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:23:59,253 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:23:59,253 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:23:59,253 INFO L204 nArgumentSynthesizer]: 2 loop disjuncts [2024-11-09 15:23:59,253 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:23:59,263 INFO L401 nArgumentSynthesizer]: We have 16 Motzkin's Theorem applications. [2024-11-09 15:23:59,263 INFO L402 nArgumentSynthesizer]: A total of 4 supporting invariants were added. [2024-11-09 15:23:59,284 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-09 15:23:59,387 INFO L443 ModelExtractionUtils]: Simplification made 28 calls to the SMT solver. [2024-11-09 15:23:59,388 INFO L444 ModelExtractionUtils]: 2 out of 31 variables were initially zero. Simplification set additionally 21 variables to zero. [2024-11-09 15:23:59,389 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:23:59,389 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:23:59,408 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-09 15:23:59,409 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-09 15:23:59,410 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-09 15:23:59,423 INFO L438 nArgumentSynthesizer]: Removed 1 redundant supporting invariants from a total of 4. [2024-11-09 15:23:59,423 INFO L474 LassoAnalysis]: Proved termination. [2024-11-09 15:23:59,423 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int#2 ULTIMATE.start_main_~tmp~0#1.base) 0)_1) = 2*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~tmp~0#1.base) 0)_1 + 1 Supporting invariants [1*v_rep(select (select #memory_int#0 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_1 - 1 >= 0, 1*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~tmp~0#1.base) 0)_1 >= 0, 1*v_rep(select (select #memory_int#1 ULTIMATE.start_main_~id~0#1.base) ULTIMATE.start_main_~id~0#1.offset)_1 >= 0] [2024-11-09 15:23:59,434 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-09 15:23:59,501 INFO L156 tatePredicateManager]: 24 out of 26 supporting invariants were superfluous and have been removed [2024-11-09 15:23:59,513 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#2 [2024-11-09 15:23:59,514 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#2,GLOBAL] [2024-11-09 15:23:59,514 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#2,GLOBAL],[IdentifierExpression[~tmp~0!base,]]] [2024-11-09 15:23:59,534 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:23:59,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:23:59,561 INFO L255 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 12 conjuncts are in the unsatisfiable core [2024-11-09 15:23:59,563 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:23:59,628 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Ended with exit code 0 [2024-11-09 15:23:59,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 15 treesize of output 7 [2024-11-09 15:23:59,728 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:23:59,729 INFO L255 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 11 conjuncts are in the unsatisfiable core [2024-11-09 15:23:59,729 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:23:59,773 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-09 15:23:59,776 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-09 15:23:59,777 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-09 15:23:59,847 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-09 15:23:59,848 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-09 15:23:59,848 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-09 15:23:59,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 9 transitions. [2024-11-09 15:23:59,850 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 9 transitions. Stem has 4 letters. Loop has 4 letters. [2024-11-09 15:23:59,850 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:23:59,850 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 9 transitions. Stem has 8 letters. Loop has 4 letters. [2024-11-09 15:23:59,850 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:23:59,850 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 9 transitions. Stem has 4 letters. Loop has 8 letters. [2024-11-09 15:23:59,851 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:23:59,851 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 16 states and 22 transitions. [2024-11-09 15:23:59,851 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:23:59,852 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 16 states to 16 states and 22 transitions. [2024-11-09 15:23:59,852 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 11 [2024-11-09 15:23:59,852 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 12 [2024-11-09 15:23:59,852 INFO L73 IsDeterministic]: Start isDeterministic. Operand 16 states and 22 transitions. [2024-11-09 15:23:59,852 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:23:59,852 INFO L218 hiAutomatonCegarLoop]: Abstraction has 16 states and 22 transitions. [2024-11-09 15:23:59,852 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16 states and 22 transitions. [2024-11-09 15:23:59,853 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16 to 16. [2024-11-09 15:23:59,853 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-09 15:23:59,854 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 22 transitions. [2024-11-09 15:23:59,854 INFO L240 hiAutomatonCegarLoop]: Abstraction has 16 states and 22 transitions. [2024-11-09 15:23:59,854 INFO L425 stractBuchiCegarLoop]: Abstraction has 16 states and 22 transitions. [2024-11-09 15:23:59,854 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-11-09 15:23:59,854 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 16 states and 22 transitions. [2024-11-09 15:23:59,854 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:23:59,855 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:23:59,855 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:23:59,855 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:23:59,855 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-09 15:23:59,855 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#1(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#0(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#1(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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-09 15:23:59,855 INFO L747 eck$LassoCheckResult]: Loop: 229#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 229#L556-2 [2024-11-09 15:23:59,856 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:23:59,856 INFO L85 PathProgramCache]: Analyzing trace with hash 121355089, now seen corresponding path program 1 times [2024-11-09 15:23:59,856 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:23:59,856 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [84548723] [2024-11-09 15:23:59,856 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:23:59,856 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:23:59,875 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:00,045 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-09 15:24:00,045 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:00,046 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [84548723] [2024-11-09 15:24:00,046 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [84548723] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 15:24:00,046 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 15:24:00,046 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-09 15:24:00,046 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1975612514] [2024-11-09 15:24:00,046 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 15:24:00,046 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:00,047 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:00,047 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 3 times [2024-11-09 15:24:00,047 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:00,047 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1562747895] [2024-11-09 15:24:00,047 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:00,047 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:00,059 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:00,059 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:00,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:00,064 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:00,194 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:00,194 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-09 15:24:00,194 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-11-09 15:24:00,194 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-09 15:24:00,216 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:00,216 INFO L93 Difference]: Finished difference Result 22 states and 28 transitions. [2024-11-09 15:24:00,216 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 22 states and 28 transitions. [2024-11-09 15:24:00,217 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:24:00,218 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 22 states to 22 states and 28 transitions. [2024-11-09 15:24:00,218 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 15 [2024-11-09 15:24:00,218 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 15 [2024-11-09 15:24:00,218 INFO L73 IsDeterministic]: Start isDeterministic. Operand 22 states and 28 transitions. [2024-11-09 15:24:00,218 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:00,218 INFO L218 hiAutomatonCegarLoop]: Abstraction has 22 states and 28 transitions. [2024-11-09 15:24:00,219 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states and 28 transitions. [2024-11-09 15:24:00,222 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 18. [2024-11-09 15:24:00,223 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-09 15:24:00,223 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 24 transitions. [2024-11-09 15:24:00,223 INFO L240 hiAutomatonCegarLoop]: Abstraction has 18 states and 24 transitions. [2024-11-09 15:24:00,224 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-09 15:24:00,224 INFO L425 stractBuchiCegarLoop]: Abstraction has 18 states and 24 transitions. [2024-11-09 15:24:00,224 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-11-09 15:24:00,224 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 18 states and 24 transitions. [2024-11-09 15:24:00,225 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:24:00,225 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:00,225 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:00,225 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:24:00,225 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-09 15:24:00,225 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#1(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#0(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#1(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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-09 15:24:00,225 INFO L747 eck$LassoCheckResult]: Loop: 276#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 276#L556-2 [2024-11-09 15:24:00,226 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:00,227 INFO L85 PathProgramCache]: Analyzing trace with hash 121353167, now seen corresponding path program 1 times [2024-11-09 15:24:00,227 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:00,227 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2112740565] [2024-11-09 15:24:00,227 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:00,227 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:00,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:00,246 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:00,253 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:00,258 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:00,259 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:00,259 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 4 times [2024-11-09 15:24:00,259 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:00,259 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1257903157] [2024-11-09 15:24:00,259 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:00,259 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:00,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:00,266 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:00,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:00,273 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:00,273 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:00,273 INFO L85 PathProgramCache]: Analyzing trace with hash -677985033, now seen corresponding path program 1 times [2024-11-09 15:24:00,274 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:00,274 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [506244842] [2024-11-09 15:24:00,274 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:00,274 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:00,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:00,297 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:00,305 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:00,307 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:01,028 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:24:01,029 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:24:01,029 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:24:01,029 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:24:01,029 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-09 15:24:01,029 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,029 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:24:01,029 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:24:01,029 INFO L132 ssoRankerPreferences]: Filename of dumped script: GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i_Iteration4_Lasso [2024-11-09 15:24:01,029 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:24:01,029 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:24:01,031 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,033 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,037 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,038 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,040 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,041 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,042 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,044 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,048 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,050 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,052 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,054 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,055 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,056 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,058 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,059 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,061 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,063 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,064 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,346 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:01,623 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:24:01,623 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-09 15:24:01,623 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,623 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,625 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-09 15:24:01,626 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-09 15:24:01,628 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:01,638 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,638 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,638 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,639 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,639 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,639 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,639 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,640 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,650 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-09 15:24:01,650 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,650 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,651 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-09 15:24:01,652 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-09 15:24:01,653 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:01,662 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,662 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,662 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,662 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,662 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,663 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,663 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,666 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,676 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-09 15:24:01,676 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,677 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,677 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-09 15:24:01,678 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-09 15:24:01,679 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:01,688 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,688 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,688 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,688 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,688 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,688 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,688 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,689 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,700 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-09 15:24:01,700 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,700 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,701 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-09 15:24:01,702 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-09 15:24:01,703 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:01,715 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,715 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,715 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,715 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,715 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,716 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,716 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,718 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,731 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Ended with exit code 0 [2024-11-09 15:24:01,731 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,731 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,732 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-09 15:24:01,733 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-09 15:24:01,734 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:01,743 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,743 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,743 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,743 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,743 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,744 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,744 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,745 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,757 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-09 15:24:01,758 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,758 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,759 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-09 15:24:01,759 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-09 15:24:01,760 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:01,771 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,771 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,771 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,771 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,771 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,772 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,772 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,773 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,784 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-09 15:24:01,785 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,785 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,786 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-09 15:24:01,787 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-09 15:24:01,788 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:01,798 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,798 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,798 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,798 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,800 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:01,800 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:01,803 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,815 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Ended with exit code 0 [2024-11-09 15:24:01,816 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,816 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,817 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-09 15:24:01,818 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-09 15:24:01,834 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:01,845 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,845 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,845 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,845 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,845 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,846 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,846 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,847 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,857 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Ended with exit code 0 [2024-11-09 15:24:01,857 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,857 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,858 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-09 15:24:01,859 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-09 15:24:01,860 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:01,869 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,869 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,869 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,869 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,869 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,870 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,870 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,871 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,880 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Ended with exit code 0 [2024-11-09 15:24:01,881 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,881 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,882 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-09 15:24:01,883 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-09 15:24:01,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-09 15:24:01,893 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,894 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,894 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,894 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,894 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,894 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,894 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,895 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,905 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Forceful destruction successful, exit code 0 [2024-11-09 15:24:01,906 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,906 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,907 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-09 15:24:01,907 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-09 15:24:01,908 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:01,917 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,917 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,917 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,917 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,917 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,918 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,918 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,919 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,929 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Ended with exit code 0 [2024-11-09 15:24:01,929 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,929 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,930 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-09 15:24:01,931 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-09 15:24:01,932 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:01,941 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,941 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,942 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,942 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,942 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,942 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,942 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,943 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,953 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-09 15:24:01,953 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,954 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,954 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-09 15:24:01,955 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-09 15:24:01,956 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:01,966 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,966 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:01,966 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,966 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,966 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,966 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:01,966 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:01,967 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:01,978 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Forceful destruction successful, exit code 0 [2024-11-09 15:24:01,978 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:01,978 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:01,979 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-09 15:24:01,979 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-09 15:24:01,981 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:01,990 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:01,990 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:01,990 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:01,990 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:01,992 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:01,992 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:01,995 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,006 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Forceful destruction successful, exit code 0 [2024-11-09 15:24:02,007 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,007 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,008 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-09 15:24:02,008 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-09 15:24:02,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-09 15:24:02,018 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,019 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:02,019 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,019 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,019 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,019 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:02,019 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:02,020 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,030 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Forceful destruction successful, exit code 0 [2024-11-09 15:24:02,031 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,031 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,032 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-09 15:24:02,033 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-09 15:24:02,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-09 15:24:02,043 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,043 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:02,043 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,043 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,043 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,044 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:02,044 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:02,045 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,056 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-09 15:24:02,056 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,056 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,058 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-09 15:24:02,058 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-09 15:24:02,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-09 15:24:02,070 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,070 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,070 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,070 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,072 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:02,072 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:02,076 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,086 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-09 15:24:02,087 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,087 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-09 15:24:02,088 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-09 15:24:02,089 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:02,099 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,099 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:02,099 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,099 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,099 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,100 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:02,100 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:02,101 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,110 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Ended with exit code 0 [2024-11-09 15:24:02,111 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,111 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,112 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-09 15:24:02,113 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-09 15:24:02,113 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:02,123 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,124 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,124 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,124 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,126 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:02,126 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:02,131 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,145 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Ended with exit code 0 [2024-11-09 15:24:02,145 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,146 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,147 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-09 15:24:02,148 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-09 15:24:02,149 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:02,159 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,159 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,159 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,159 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,162 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:02,162 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:02,166 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,177 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Ended with exit code 0 [2024-11-09 15:24:02,178 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,178 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,181 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-09 15:24:02,182 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-09 15:24:02,184 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:02,196 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,196 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,196 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,196 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,199 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:02,199 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:02,205 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,215 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-09 15:24:02,215 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,216 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,216 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-09 15:24:02,218 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-09 15:24:02,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-09 15:24:02,228 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,228 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,228 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,228 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,229 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:02,229 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:02,231 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,241 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-09 15:24:02,241 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,241 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,242 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-09 15:24:02,243 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-09 15:24:02,244 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:02,253 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,253 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,254 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,254 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,256 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:02,256 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:02,260 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,271 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-09 15:24:02,271 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,271 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,272 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-09 15:24:02,273 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-09 15:24:02,274 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:02,284 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,284 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,284 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,284 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,287 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:02,287 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:02,291 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,300 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-09 15:24:02,301 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,301 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,304 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-09 15:24:02,305 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-09 15:24:02,306 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:02,316 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,316 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,316 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,316 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,319 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:02,319 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:02,323 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,333 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-09 15:24:02,334 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,334 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,335 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-09 15:24:02,336 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-09 15:24:02,336 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:02,346 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,346 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,346 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:02,346 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,348 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:02,348 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:02,351 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:02,361 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Ended with exit code 0 [2024-11-09 15:24:02,361 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,361 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,363 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-09 15:24:02,364 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-09 15:24:02,364 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:02,374 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:02,374 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:02,374 INFO L204 nArgumentSynthesizer]: 2 loop disjuncts [2024-11-09 15:24:02,374 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:02,382 INFO L401 nArgumentSynthesizer]: We have 16 Motzkin's Theorem applications. [2024-11-09 15:24:02,382 INFO L402 nArgumentSynthesizer]: A total of 4 supporting invariants were added. [2024-11-09 15:24:02,402 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-09 15:24:02,459 INFO L443 ModelExtractionUtils]: Simplification made 31 calls to the SMT solver. [2024-11-09 15:24:02,459 INFO L444 ModelExtractionUtils]: 3 out of 31 variables were initially zero. Simplification set additionally 20 variables to zero. [2024-11-09 15:24:02,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:02,460 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:02,460 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-09 15:24:02,462 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-09 15:24:02,462 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-09 15:24:02,474 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 4. [2024-11-09 15:24:02,474 INFO L474 LassoAnalysis]: Proved termination. [2024-11-09 15:24:02,474 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int#2 ULTIMATE.start_main_~tmp~0#1.base) ULTIMATE.start_main_~tmp~0#1.offset)_2) = 1*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~tmp~0#1.base) ULTIMATE.start_main_~tmp~0#1.offset)_2 Supporting invariants [2*v_rep(select (select #memory_int#0 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_2 - 1 >= 0, 2*v_rep(select (select #memory_int#0 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_2 - 1*v_rep(select (select #memory_int#1 ULTIMATE.start_main_~id~0#1.base) ULTIMATE.start_main_~id~0#1.offset)_2 >= 0, 1*v_rep(select (select #memory_int#1 ULTIMATE.start_main_~id~0#1.base) ULTIMATE.start_main_~id~0#1.offset)_2 >= 0, 1*v_rep(select (select #memory_int#1 ULTIMATE.start_main_~id~0#1.base) 0)_2 >= 0] [2024-11-09 15:24:02,485 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-09 15:24:02,548 INFO L156 tatePredicateManager]: 24 out of 27 supporting invariants were superfluous and have been removed [2024-11-09 15:24:02,553 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#2 [2024-11-09 15:24:02,553 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#2,GLOBAL] [2024-11-09 15:24:02,553 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#2,GLOBAL],[IdentifierExpression[~tmp~0!base,]]] [2024-11-09 15:24:02,573 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:02,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:02,601 INFO L255 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 15 conjuncts are in the unsatisfiable core [2024-11-09 15:24:02,603 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:02,630 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-09 15:24:02,666 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-09 15:24:02,708 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-09 15:24:02,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:02,737 INFO L255 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-11-09 15:24:02,738 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:02,837 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:02,837 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.5 stem predicates 4 loop predicates [2024-11-09 15:24:02,837 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 18 states and 24 transitions. cyclomatic complexity: 8 Second operand has 9 states, 9 states have (on average 1.3333333333333333) internal successors, (12), 9 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-09 15:24:02,985 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 18 states and 24 transitions. cyclomatic complexity: 8. Second operand has 9 states, 9 states have (on average 1.3333333333333333) internal successors, (12), 9 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 34 states and 45 transitions. Complement of second has 14 states. [2024-11-09 15:24:02,986 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 10 states 5 stem states 3 non-accepting loop states 2 accepting loop states [2024-11-09 15:24:02,987 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 1.3333333333333333) internal successors, (12), 9 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-09 15:24:02,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 21 transitions. [2024-11-09 15:24:02,987 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 21 transitions. Stem has 8 letters. Loop has 4 letters. [2024-11-09 15:24:02,988 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:24:02,988 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 21 transitions. Stem has 12 letters. Loop has 4 letters. [2024-11-09 15:24:02,988 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:24:02,988 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 10 states and 21 transitions. Stem has 8 letters. Loop has 8 letters. [2024-11-09 15:24:02,988 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:24:02,988 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 34 states and 45 transitions. [2024-11-09 15:24:02,989 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:24:02,989 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 34 states to 34 states and 45 transitions. [2024-11-09 15:24:02,990 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 20 [2024-11-09 15:24:02,990 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22 [2024-11-09 15:24:02,990 INFO L73 IsDeterministic]: Start isDeterministic. Operand 34 states and 45 transitions. [2024-11-09 15:24:02,990 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:02,990 INFO L218 hiAutomatonCegarLoop]: Abstraction has 34 states and 45 transitions. [2024-11-09 15:24:02,990 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states and 45 transitions. [2024-11-09 15:24:02,991 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 21. [2024-11-09 15:24:02,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 20 states have internal predecessors, (28), 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-09 15:24:02,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 28 transitions. [2024-11-09 15:24:02,991 INFO L240 hiAutomatonCegarLoop]: Abstraction has 21 states and 28 transitions. [2024-11-09 15:24:02,991 INFO L425 stractBuchiCegarLoop]: Abstraction has 21 states and 28 transitions. [2024-11-09 15:24:02,991 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-11-09 15:24:02,991 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 21 states and 28 transitions. [2024-11-09 15:24:02,992 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:24:02,992 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:02,992 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:02,992 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:24:02,992 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-09 15:24:02,992 INFO L745 eck$LassoCheckResult]: Stem: 525#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 526#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 531#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 516#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 517#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 532#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 521#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 524#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 530#L555-1 assume !main_#t~short15#1; 518#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 527#L556-2 [2024-11-09 15:24:02,992 INFO L747 eck$LassoCheckResult]: Loop: 527#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 528#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 534#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 533#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 527#L556-2 [2024-11-09 15:24:02,993 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:02,993 INFO L85 PathProgramCache]: Analyzing trace with hash -676136071, now seen corresponding path program 1 times [2024-11-09 15:24:02,993 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:02,994 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [718223408] [2024-11-09 15:24:02,994 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:02,994 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:03,021 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Ended with exit code 0 [2024-11-09 15:24:03,023 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:03,041 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-09 15:24:03,041 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:03,041 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [718223408] [2024-11-09 15:24:03,041 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [718223408] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 15:24:03,041 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 15:24:03,041 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-09 15:24:03,041 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1281905722] [2024-11-09 15:24:03,041 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 15:24:03,042 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:03,042 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:03,042 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 5 times [2024-11-09 15:24:03,042 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:03,042 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [712821881] [2024-11-09 15:24:03,042 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:03,042 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:03,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:03,047 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:03,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:03,052 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:03,159 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:03,159 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-09 15:24:03,159 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-09 15:24:03,160 INFO L87 Difference]: Start difference. First operand 21 states and 28 transitions. cyclomatic complexity: 9 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-09 15:24:03,166 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:03,166 INFO L93 Difference]: Finished difference Result 24 states and 28 transitions. [2024-11-09 15:24:03,166 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 24 states and 28 transitions. [2024-11-09 15:24:03,166 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:24:03,167 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 24 states to 21 states and 25 transitions. [2024-11-09 15:24:03,167 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 16 [2024-11-09 15:24:03,167 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 16 [2024-11-09 15:24:03,167 INFO L73 IsDeterministic]: Start isDeterministic. Operand 21 states and 25 transitions. [2024-11-09 15:24:03,167 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:03,167 INFO L218 hiAutomatonCegarLoop]: Abstraction has 21 states and 25 transitions. [2024-11-09 15:24:03,167 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states and 25 transitions. [2024-11-09 15:24:03,168 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 20. [2024-11-09 15:24:03,168 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.2) internal successors, (24), 19 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-09 15:24:03,168 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 24 transitions. [2024-11-09 15:24:03,168 INFO L240 hiAutomatonCegarLoop]: Abstraction has 20 states and 24 transitions. [2024-11-09 15:24:03,168 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-09 15:24:03,169 INFO L425 stractBuchiCegarLoop]: Abstraction has 20 states and 24 transitions. [2024-11-09 15:24:03,169 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-11-09 15:24:03,169 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 20 states and 24 transitions. [2024-11-09 15:24:03,169 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2024-11-09 15:24:03,169 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:03,169 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:03,170 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 1, 1, 1, 1, 1, 1] [2024-11-09 15:24:03,170 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-09 15:24:03,170 INFO L745 eck$LassoCheckResult]: Stem: 579#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 580#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 581#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 567#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 568#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 577#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 571#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 572#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 574#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 578#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 586#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 584#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 575#L556-2 [2024-11-09 15:24:03,170 INFO L747 eck$LassoCheckResult]: Loop: 575#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 576#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 585#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 583#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 575#L556-2 [2024-11-09 15:24:03,171 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:03,171 INFO L85 PathProgramCache]: Analyzing trace with hash -676137993, now seen corresponding path program 2 times [2024-11-09 15:24:03,171 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:03,171 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2106810017] [2024-11-09 15:24:03,171 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:03,171 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:03,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:03,187 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:03,195 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:03,197 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:03,198 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:03,198 INFO L85 PathProgramCache]: Analyzing trace with hash 1419305, now seen corresponding path program 6 times [2024-11-09 15:24:03,198 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:03,198 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1684787932] [2024-11-09 15:24:03,198 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:03,198 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:03,201 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:03,201 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:03,203 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:03,204 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:03,204 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:03,205 INFO L85 PathProgramCache]: Analyzing trace with hash 480358687, now seen corresponding path program 3 times [2024-11-09 15:24:03,205 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:03,205 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [699639624] [2024-11-09 15:24:03,205 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:03,205 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:03,221 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:03,534 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 3 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:03,535 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:03,535 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [699639624] [2024-11-09 15:24:03,535 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [699639624] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:24:03,535 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1926278598] [2024-11-09 15:24:03,535 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-09 15:24:03,535 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:24:03,535 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:03,538 INFO L229 MonitoredProcess]: Starting monitored process 53 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:24:03,539 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (53)] Waiting until timeout for monitored process [2024-11-09 15:24:03,636 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2024-11-09 15:24:03,636 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:24:03,637 INFO L255 TraceCheckSpWp]: Trace formula consists of 208 conjuncts, 23 conjuncts are in the unsatisfiable core [2024-11-09 15:24:03,639 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:03,674 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-09 15:24:03,713 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-09 15:24:03,754 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-09 15:24:03,829 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-09 15:24:03,848 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-09 15:24:03,855 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-09 15:24:03,857 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:03,857 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:24:03,938 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-09 15:24:04,003 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 5 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:04,003 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1926278598] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:24:04,003 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:24:04,003 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10, 10] total 20 [2024-11-09 15:24:04,003 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [96365105] [2024-11-09 15:24:04,003 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:24:04,101 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:04,101 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2024-11-09 15:24:04,102 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=66, Invalid=354, Unknown=0, NotChecked=0, Total=420 [2024-11-09 15:24:04,102 INFO L87 Difference]: Start difference. First operand 20 states and 24 transitions. cyclomatic complexity: 6 Second operand has 21 states, 20 states have (on average 1.8) internal successors, (36), 21 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-09 15:24:04,509 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:04,509 INFO L93 Difference]: Finished difference Result 48 states and 51 transitions. [2024-11-09 15:24:04,509 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 48 states and 51 transitions. [2024-11-09 15:24:04,510 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 16 [2024-11-09 15:24:04,510 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 48 states to 42 states and 45 transitions. [2024-11-09 15:24:04,511 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 34 [2024-11-09 15:24:04,511 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 42 [2024-11-09 15:24:04,511 INFO L73 IsDeterministic]: Start isDeterministic. Operand 42 states and 45 transitions. [2024-11-09 15:24:04,511 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:04,511 INFO L218 hiAutomatonCegarLoop]: Abstraction has 42 states and 45 transitions. [2024-11-09 15:24:04,511 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states and 45 transitions. [2024-11-09 15:24:04,512 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 31. [2024-11-09 15:24:04,512 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 1.096774193548387) internal successors, (34), 30 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-09 15:24:04,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 34 transitions. [2024-11-09 15:24:04,513 INFO L240 hiAutomatonCegarLoop]: Abstraction has 31 states and 34 transitions. [2024-11-09 15:24:04,513 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2024-11-09 15:24:04,514 INFO L425 stractBuchiCegarLoop]: Abstraction has 31 states and 34 transitions. [2024-11-09 15:24:04,514 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-11-09 15:24:04,514 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 34 transitions. [2024-11-09 15:24:04,514 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 16 [2024-11-09 15:24:04,514 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:04,514 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:04,515 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:24:04,515 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-09 15:24:04,515 INFO L745 eck$LassoCheckResult]: Stem: 795#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 796#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 797#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 787#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 788#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 807#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 804#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 805#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 792#L556-2 [2024-11-09 15:24:04,515 INFO L747 eck$LassoCheckResult]: Loop: 792#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 816#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 815#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 791#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 792#L556-2 [2024-11-09 15:24:04,515 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:04,515 INFO L85 PathProgramCache]: Analyzing trace with hash 121353169, now seen corresponding path program 2 times [2024-11-09 15:24:04,516 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:04,516 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1419866302] [2024-11-09 15:24:04,516 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:04,516 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:04,526 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:04,529 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:04,538 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:04,540 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:04,541 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:04,541 INFO L85 PathProgramCache]: Analyzing trace with hash 1419303, now seen corresponding path program 1 times [2024-11-09 15:24:04,541 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:04,541 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1937795459] [2024-11-09 15:24:04,541 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:04,541 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:04,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:04,545 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:04,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:04,547 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:04,548 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:04,548 INFO L85 PathProgramCache]: Analyzing trace with hash -676137993, now seen corresponding path program 4 times [2024-11-09 15:24:04,548 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:04,548 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1971363601] [2024-11-09 15:24:04,548 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:04,548 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:04,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:04,559 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:04,565 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:04,568 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:05,350 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:24:05,350 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:24:05,350 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:24:05,350 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:24:05,350 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-09 15:24:05,350 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:05,350 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:24:05,350 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:24:05,350 INFO L132 ssoRankerPreferences]: Filename of dumped script: GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i_Iteration7_Lasso [2024-11-09 15:24:05,350 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:24:05,351 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:24:05,352 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,354 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,355 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,578 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,580 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,581 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,582 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,583 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,585 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,586 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,587 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,588 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,590 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,591 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,592 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,594 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,596 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,597 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,599 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,600 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:05,828 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:24:05,828 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-09 15:24:05,828 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:05,828 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:05,830 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-09 15:24:05,830 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-09 15:24:05,831 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:05,842 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:05,842 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:05,842 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:05,842 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:05,842 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:05,843 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:05,843 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:05,844 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:05,854 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Ended with exit code 0 [2024-11-09 15:24:05,855 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:05,855 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:05,856 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-09 15:24:05,856 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-09 15:24:05,857 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:05,866 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:05,866 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:05,867 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:05,867 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:05,867 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:05,867 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:05,867 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:05,868 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:05,878 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Ended with exit code 0 [2024-11-09 15:24:05,878 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:05,878 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:05,879 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-09 15:24:05,880 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-09 15:24:05,880 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:05,890 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:05,891 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:05,891 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:05,891 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:05,893 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:05,893 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:05,897 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:05,907 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Ended with exit code 0 [2024-11-09 15:24:05,907 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:05,907 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:05,908 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-09 15:24:05,909 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-09 15:24:05,910 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:05,919 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:05,919 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:05,919 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:05,920 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:05,921 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:05,921 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:05,924 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:05,934 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-09 15:24:05,935 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:05,935 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:05,935 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-09 15:24:05,936 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-09 15:24:05,937 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:05,946 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:05,946 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:05,946 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:05,946 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:05,948 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:05,949 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:05,953 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:05,963 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Ended with exit code 0 [2024-11-09 15:24:05,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:05,964 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:05,965 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-09 15:24:05,966 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-09 15:24:05,966 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:05,976 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:05,976 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:05,976 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:05,976 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:05,977 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:05,977 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:05,979 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:05,989 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Ended with exit code 0 [2024-11-09 15:24:05,989 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:05,989 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:05,990 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-09 15:24:05,991 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-09 15:24:05,991 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:06,001 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:06,001 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:06,001 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:06,001 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:06,002 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:06,002 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:06,006 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:06,017 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Forceful destruction successful, exit code 0 [2024-11-09 15:24:06,017 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:06,017 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:06,018 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-09 15:24:06,019 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-09 15:24:06,019 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:06,029 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:06,029 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:06,029 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:06,029 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:06,031 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:06,031 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:06,035 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:06,045 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-09 15:24:06,045 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:06,045 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:06,060 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-09 15:24:06,061 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-09 15:24:06,062 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:06,071 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:06,071 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:06,072 INFO L204 nArgumentSynthesizer]: 2 loop disjuncts [2024-11-09 15:24:06,072 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:06,078 INFO L401 nArgumentSynthesizer]: We have 16 Motzkin's Theorem applications. [2024-11-09 15:24:06,078 INFO L402 nArgumentSynthesizer]: A total of 4 supporting invariants were added. [2024-11-09 15:24:06,094 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-09 15:24:06,121 INFO L443 ModelExtractionUtils]: Simplification made 17 calls to the SMT solver. [2024-11-09 15:24:06,121 INFO L444 ModelExtractionUtils]: 4 out of 26 variables were initially zero. Simplification set additionally 19 variables to zero. [2024-11-09 15:24:06,122 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:06,122 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:06,123 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-09 15:24:06,124 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-09 15:24:06,125 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-09 15:24:06,135 INFO L438 nArgumentSynthesizer]: Removed 4 redundant supporting invariants from a total of 4. [2024-11-09 15:24:06,135 INFO L474 LassoAnalysis]: Proved termination. [2024-11-09 15:24:06,135 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int#2 ULTIMATE.start_main_~tmp~0#1.base) 0)_3, v_rep(select (select #memory_int#0 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_3) = -1*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~tmp~0#1.base) 0)_3 + 1*v_rep(select (select #memory_int#0 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_3 Supporting invariants [] [2024-11-09 15:24:06,146 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Forceful destruction successful, exit code 0 [2024-11-09 15:24:06,191 INFO L156 tatePredicateManager]: 21 out of 22 supporting invariants were superfluous and have been removed [2024-11-09 15:24:06,193 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#0 [2024-11-09 15:24:06,193 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#0,GLOBAL] [2024-11-09 15:24:06,193 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#0,GLOBAL],[IdentifierExpression[~maxId~0!base,]]] [2024-11-09 15:24:06,193 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#2 [2024-11-09 15:24:06,193 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#2,GLOBAL] [2024-11-09 15:24:06,193 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#2,GLOBAL],[IdentifierExpression[~tmp~0!base,]]] [2024-11-09 15:24:06,205 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:06,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:06,228 INFO L255 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-09 15:24:06,229 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:06,254 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:06,255 INFO L255 TraceCheckSpWp]: Trace formula consists of 41 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-09 15:24:06,255 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:06,286 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-09 15:24:06,287 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-09 15:24:06,287 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 31 states and 34 transitions. cyclomatic complexity: 5 Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 5 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-09 15:24:06,328 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 31 states and 34 transitions. cyclomatic complexity: 5. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 5 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 63 states and 69 transitions. Complement of second has 8 states. [2024-11-09 15:24:06,329 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-09 15:24:06,329 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 5 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-09 15:24:06,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 13 transitions. [2024-11-09 15:24:06,329 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 13 transitions. Stem has 8 letters. Loop has 4 letters. [2024-11-09 15:24:06,329 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:24:06,329 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 13 transitions. Stem has 12 letters. Loop has 4 letters. [2024-11-09 15:24:06,330 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:24:06,330 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 13 transitions. Stem has 8 letters. Loop has 8 letters. [2024-11-09 15:24:06,330 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:24:06,330 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 63 states and 69 transitions. [2024-11-09 15:24:06,330 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 16 [2024-11-09 15:24:06,331 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 63 states to 46 states and 50 transitions. [2024-11-09 15:24:06,331 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 34 [2024-11-09 15:24:06,331 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 35 [2024-11-09 15:24:06,331 INFO L73 IsDeterministic]: Start isDeterministic. Operand 46 states and 50 transitions. [2024-11-09 15:24:06,331 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:06,331 INFO L218 hiAutomatonCegarLoop]: Abstraction has 46 states and 50 transitions. [2024-11-09 15:24:06,331 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states and 50 transitions. [2024-11-09 15:24:06,334 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 43. [2024-11-09 15:24:06,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 43 states have (on average 1.0930232558139534) internal successors, (47), 42 states have internal predecessors, (47), 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-09 15:24:06,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 47 transitions. [2024-11-09 15:24:06,336 INFO L240 hiAutomatonCegarLoop]: Abstraction has 43 states and 47 transitions. [2024-11-09 15:24:06,337 INFO L425 stractBuchiCegarLoop]: Abstraction has 43 states and 47 transitions. [2024-11-09 15:24:06,337 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-11-09 15:24:06,337 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 43 states and 47 transitions. [2024-11-09 15:24:06,338 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 16 [2024-11-09 15:24:06,338 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:06,338 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:06,338 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 2, 1, 1, 1, 1] [2024-11-09 15:24:06,338 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-09 15:24:06,339 INFO L745 eck$LassoCheckResult]: Stem: 1046#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1047#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 1048#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 1035#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 1036#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1065#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1064#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1059#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1060#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1061#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1063#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1062#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1057#L556-2 [2024-11-09 15:24:06,340 INFO L747 eck$LassoCheckResult]: Loop: 1057#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1058#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1053#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1054#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1057#L556-2 [2024-11-09 15:24:06,341 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:06,341 INFO L85 PathProgramCache]: Analyzing trace with hash -677985035, now seen corresponding path program 2 times [2024-11-09 15:24:06,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:06,341 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1341975641] [2024-11-09 15:24:06,341 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:06,341 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:06,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:06,358 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:06,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:06,366 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:06,366 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:06,367 INFO L85 PathProgramCache]: Analyzing trace with hash 1419303, now seen corresponding path program 2 times [2024-11-09 15:24:06,367 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:06,367 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1952243967] [2024-11-09 15:24:06,367 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:06,367 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:06,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:06,371 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:06,373 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:06,374 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:06,374 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:06,374 INFO L85 PathProgramCache]: Analyzing trace with hash -199699685, now seen corresponding path program 3 times [2024-11-09 15:24:06,375 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:06,375 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [612015833] [2024-11-09 15:24:06,375 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:06,375 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:06,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:06,393 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:06,400 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:06,406 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:07,471 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:24:07,471 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:24:07,471 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:24:07,471 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:24:07,471 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-09 15:24:07,471 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:07,471 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:24:07,471 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:24:07,471 INFO L132 ssoRankerPreferences]: Filename of dumped script: GulwaniJainKoskinen-2009PLDI-Fig1-alloca-2.i_Iteration8_Lasso [2024-11-09 15:24:07,471 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:24:07,471 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:24:07,473 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,474 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,475 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,476 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,480 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,481 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,482 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,484 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,486 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,487 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,497 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,502 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,503 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,505 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,506 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,507 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,509 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,593 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Forceful destruction successful, exit code 0 [2024-11-09 15:24:07,769 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,770 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,772 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:24:07,995 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:24:07,996 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-09 15:24:07,996 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:07,996 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:07,997 INFO L229 MonitoredProcess]: Starting monitored process 64 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-09 15:24:07,998 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Waiting until timeout for monitored process [2024-11-09 15:24:07,998 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:08,007 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,008 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,008 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,008 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,008 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,008 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,008 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,009 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,019 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Ended with exit code 0 [2024-11-09 15:24:08,019 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,019 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,020 INFO L229 MonitoredProcess]: Starting monitored process 65 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-09 15:24:08,020 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Waiting until timeout for monitored process [2024-11-09 15:24:08,021 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,030 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,031 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,031 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,031 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,031 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,031 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,031 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,032 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,042 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Ended with exit code 0 [2024-11-09 15:24:08,042 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,042 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,043 INFO L229 MonitoredProcess]: Starting monitored process 66 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-09 15:24:08,045 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Waiting until timeout for monitored process [2024-11-09 15:24:08,045 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,055 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,055 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,055 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,055 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,055 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,055 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,055 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,056 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,067 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Ended with exit code 0 [2024-11-09 15:24:08,067 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,067 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,068 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-09 15:24:08,068 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-09 15:24:08,069 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,079 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,079 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,079 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,079 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,079 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,079 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,079 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,080 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,090 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Ended with exit code 0 [2024-11-09 15:24:08,091 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,091 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,092 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-09 15:24:08,092 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-09 15:24:08,097 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:08,109 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,110 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,110 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,110 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,110 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,110 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,110 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,111 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,121 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Ended with exit code 0 [2024-11-09 15:24:08,121 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,121 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,122 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-09 15:24:08,123 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-09 15:24:08,124 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,133 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,134 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,134 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,134 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,134 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,134 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,134 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,135 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,145 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Ended with exit code 0 [2024-11-09 15:24:08,146 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,146 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,147 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-09 15:24:08,147 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-09 15:24:08,148 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,157 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,157 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,158 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,158 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,158 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,158 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,158 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,159 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,169 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Ended with exit code 0 [2024-11-09 15:24:08,169 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,169 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,170 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-09 15:24:08,171 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-09 15:24:08,172 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:08,181 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,181 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,181 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,181 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,181 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,181 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,181 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,182 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,192 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Ended with exit code 0 [2024-11-09 15:24:08,193 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,193 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,194 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-09 15:24:08,194 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-09 15:24:08,195 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,204 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,204 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,204 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,204 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,205 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:08,205 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:08,207 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,218 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Ended with exit code 0 [2024-11-09 15:24:08,218 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,218 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,219 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-09 15:24:08,220 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-09 15:24:08,221 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,230 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,230 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,230 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,231 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,231 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,231 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,231 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,232 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,242 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Ended with exit code 0 [2024-11-09 15:24:08,243 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,243 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,244 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-09 15:24:08,245 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-09 15:24:08,246 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,255 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,255 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,255 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,255 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,255 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,256 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,256 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,257 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,266 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-09 15:24:08,267 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,267 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,268 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-09 15:24:08,268 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-09 15:24:08,269 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,279 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,279 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,279 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,279 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,279 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,279 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,279 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,280 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,290 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Ended with exit code 0 [2024-11-09 15:24:08,290 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,290 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,291 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-09 15:24:08,292 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-09 15:24:08,292 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,302 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,302 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,302 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,302 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,302 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,302 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,302 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,303 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,314 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Ended with exit code 0 [2024-11-09 15:24:08,314 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,314 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,315 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-09 15:24:08,315 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-09 15:24:08,316 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,326 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,326 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,326 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,326 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,327 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:08,327 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:08,329 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,339 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Ended with exit code 0 [2024-11-09 15:24:08,339 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,339 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,340 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-09 15:24:08,341 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-09 15:24:08,341 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,351 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,351 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,351 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,351 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,351 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,351 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,351 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,352 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,362 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Ended with exit code 0 [2024-11-09 15:24:08,363 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,363 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,364 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-09 15:24:08,364 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-09 15:24:08,365 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,374 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,375 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:24:08,375 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,375 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,375 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,375 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:24:08,375 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:24:08,376 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,386 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-09 15:24:08,386 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,386 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,387 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-09 15:24:08,388 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-09 15:24:08,389 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:08,399 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,399 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,399 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,399 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,401 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:08,402 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:08,407 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,417 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-09 15:24:08,418 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,418 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,419 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-09 15:24:08,420 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-09 15:24:08,420 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,431 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,432 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,432 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,432 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,433 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:08,433 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:08,437 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,448 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Ended with exit code 0 [2024-11-09 15:24:08,448 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,448 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,449 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-09 15:24:08,450 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-09 15:24:08,450 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,460 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,460 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,460 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,460 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,462 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:08,462 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:08,466 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,477 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-09 15:24:08,477 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,477 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,478 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-09 15:24:08,479 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-09 15:24:08,479 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:08,489 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,489 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,489 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,489 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,490 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:08,490 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:08,492 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,502 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-09 15:24:08,502 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,503 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,503 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-09 15:24:08,504 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-09 15:24:08,505 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,514 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,514 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,514 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,514 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,516 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:08,516 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:08,519 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,529 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (84)] Ended with exit code 0 [2024-11-09 15:24:08,530 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,530 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,531 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-09 15:24:08,532 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-09 15:24:08,532 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:24:08,542 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,542 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,542 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,542 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,543 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:08,543 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:08,547 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,557 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-09 15:24:08,557 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,557 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,558 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-09 15:24:08,559 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-09 15:24:08,560 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,569 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,569 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,569 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:24:08,570 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,571 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:24:08,571 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:24:08,574 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:24:08,584 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (86)] Ended with exit code 0 [2024-11-09 15:24:08,585 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,585 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,586 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-09 15:24:08,587 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-09 15:24:08,587 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-09 15:24:08,597 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:24:08,597 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:24:08,597 INFO L204 nArgumentSynthesizer]: 2 loop disjuncts [2024-11-09 15:24:08,597 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:24:08,602 INFO L401 nArgumentSynthesizer]: We have 16 Motzkin's Theorem applications. [2024-11-09 15:24:08,602 INFO L402 nArgumentSynthesizer]: A total of 4 supporting invariants were added. [2024-11-09 15:24:08,618 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-09 15:24:08,652 INFO L443 ModelExtractionUtils]: Simplification made 21 calls to the SMT solver. [2024-11-09 15:24:08,652 INFO L444 ModelExtractionUtils]: 6 out of 26 variables were initially zero. Simplification set additionally 17 variables to zero. [2024-11-09 15:24:08,652 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:24:08,652 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:08,653 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-09 15:24:08,654 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-09 15:24:08,654 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-09 15:24:08,665 INFO L438 nArgumentSynthesizer]: Removed 4 redundant supporting invariants from a total of 4. [2024-11-09 15:24:08,665 INFO L474 LassoAnalysis]: Proved termination. [2024-11-09 15:24:08,665 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select (select #memory_int#2 ULTIMATE.start_main_~tmp~0#1.base) ULTIMATE.start_main_~tmp~0#1.offset)_4, v_rep(select (select #memory_int#0 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_4) = -1*v_rep(select (select #memory_int#2 ULTIMATE.start_main_~tmp~0#1.base) ULTIMATE.start_main_~tmp~0#1.offset)_4 + 1*v_rep(select (select #memory_int#0 ULTIMATE.start_main_~maxId~0#1.base) ULTIMATE.start_main_~maxId~0#1.offset)_4 Supporting invariants [] [2024-11-09 15:24:08,676 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (87)] Forceful destruction successful, exit code 0 [2024-11-09 15:24:08,717 INFO L156 tatePredicateManager]: 22 out of 22 supporting invariants were superfluous and have been removed [2024-11-09 15:24:08,718 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#0 [2024-11-09 15:24:08,719 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#0,GLOBAL] [2024-11-09 15:24:08,719 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#0,GLOBAL],[IdentifierExpression[~maxId~0!base,]]] [2024-11-09 15:24:08,719 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #memory_int#2 [2024-11-09 15:24:08,719 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#memory_int#2,GLOBAL] [2024-11-09 15:24:08,719 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array ArrayAccessExpression[IdentifierExpression[#memory_int#2,GLOBAL],[IdentifierExpression[~tmp~0!base,]]] [2024-11-09 15:24:08,726 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:08,748 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:08,749 INFO L255 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-09 15:24:08,750 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:08,770 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:08,771 INFO L255 TraceCheckSpWp]: Trace formula consists of 39 conjuncts, 7 conjuncts are in the unsatisfiable core [2024-11-09 15:24:08,771 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:08,789 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-09 15:24:08,789 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2024-11-09 15:24:08,789 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 43 states and 47 transitions. cyclomatic complexity: 7 Second operand has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 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-09 15:24:08,807 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 43 states and 47 transitions. cyclomatic complexity: 7. Second operand has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 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 52 states and 56 transitions. Complement of second has 7 states. [2024-11-09 15:24:08,807 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-09 15:24:08,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.25) internal successors, (13), 4 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-09 15:24:08,807 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 12 transitions. [2024-11-09 15:24:08,808 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 12 letters. Loop has 4 letters. [2024-11-09 15:24:08,808 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:24:08,808 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 16 letters. Loop has 4 letters. [2024-11-09 15:24:08,808 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:24:08,808 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 12 letters. Loop has 8 letters. [2024-11-09 15:24:08,808 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:24:08,808 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 52 states and 56 transitions. [2024-11-09 15:24:08,809 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 12 [2024-11-09 15:24:08,809 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 52 states to 46 states and 50 transitions. [2024-11-09 15:24:08,809 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 29 [2024-11-09 15:24:08,811 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 31 [2024-11-09 15:24:08,811 INFO L73 IsDeterministic]: Start isDeterministic. Operand 46 states and 50 transitions. [2024-11-09 15:24:08,811 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:08,811 INFO L218 hiAutomatonCegarLoop]: Abstraction has 46 states and 50 transitions. [2024-11-09 15:24:08,811 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states and 50 transitions. [2024-11-09 15:24:08,812 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 40. [2024-11-09 15:24:08,813 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 40 states have (on average 1.1) internal successors, (44), 39 states have internal predecessors, (44), 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-09 15:24:08,813 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 44 transitions. [2024-11-09 15:24:08,813 INFO L240 hiAutomatonCegarLoop]: Abstraction has 40 states and 44 transitions. [2024-11-09 15:24:08,813 INFO L425 stractBuchiCegarLoop]: Abstraction has 40 states and 44 transitions. [2024-11-09 15:24:08,813 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-11-09 15:24:08,813 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 40 states and 44 transitions. [2024-11-09 15:24:08,813 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 12 [2024-11-09 15:24:08,813 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:08,813 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:08,814 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 5, 3, 2, 1, 1, 1, 1] [2024-11-09 15:24:08,814 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [3, 3, 3, 2, 1] [2024-11-09 15:24:08,816 INFO L745 eck$LassoCheckResult]: Stem: 1301#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1302#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 1303#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 1289#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 1290#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1310#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1309#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1307#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1308#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1312#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1311#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1306#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1304#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1305#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1326#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1324#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1299#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1300#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1293#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1294#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1296#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1322#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1320#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1317#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1297#L556-2 [2024-11-09 15:24:08,817 INFO L747 eck$LassoCheckResult]: Loop: 1297#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1298#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1291#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1292#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1295#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1328#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1327#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1325#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1319#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1323#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1321#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1318#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1297#L556-2 [2024-11-09 15:24:08,817 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:08,817 INFO L85 PathProgramCache]: Analyzing trace with hash -557976725, now seen corresponding path program 5 times [2024-11-09 15:24:08,843 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:08,843 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [599358550] [2024-11-09 15:24:08,843 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:08,843 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:08,872 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (88)] Ended with exit code 0 [2024-11-09 15:24:08,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:09,345 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 3 proven. 37 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:09,345 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:09,345 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [599358550] [2024-11-09 15:24:09,345 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [599358550] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:24:09,345 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [682079681] [2024-11-09 15:24:09,346 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-09 15:24:09,346 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:24:09,346 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:09,348 INFO L229 MonitoredProcess]: Starting monitored process 89 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:24:09,350 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (89)] Waiting until timeout for monitored process [2024-11-09 15:24:09,437 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2024-11-09 15:24:09,438 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:24:09,439 INFO L255 TraceCheckSpWp]: Trace formula consists of 282 conjuncts, 37 conjuncts are in the unsatisfiable core [2024-11-09 15:24:09,444 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:09,632 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 43 treesize of output 27 [2024-11-09 15:24:09,736 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 41 treesize of output 18 [2024-11-09 15:24:09,782 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 72 treesize of output 48 [2024-11-09 15:24:09,875 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 57 treesize of output 41 [2024-11-09 15:24:09,934 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 57 treesize of output 41 [2024-11-09 15:24:09,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 40 treesize of output 24 [2024-11-09 15:24:09,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 35 treesize of output 23 [2024-11-09 15:24:10,025 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 3 proven. 37 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:10,026 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:24:10,349 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-09 15:24:10,426 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 66 treesize of output 46 [2024-11-09 15:24:10,434 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 14 proven. 26 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:10,434 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [682079681] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:24:10,434 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:24:10,434 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 15, 15] total 35 [2024-11-09 15:24:10,435 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [396507664] [2024-11-09 15:24:10,435 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:24:10,435 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:10,435 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:10,435 INFO L85 PathProgramCache]: Analyzing trace with hash 893710197, now seen corresponding path program 1 times [2024-11-09 15:24:10,435 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:10,435 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [783522823] [2024-11-09 15:24:10,435 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:10,435 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:10,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:10,447 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:10,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:10,461 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:10,745 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:10,745 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 36 interpolants. [2024-11-09 15:24:10,746 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=213, Invalid=1047, Unknown=0, NotChecked=0, Total=1260 [2024-11-09 15:24:10,746 INFO L87 Difference]: Start difference. First operand 40 states and 44 transitions. cyclomatic complexity: 7 Second operand has 36 states, 35 states have (on average 1.7142857142857142) internal successors, (60), 36 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:24:11,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:11,698 INFO L93 Difference]: Finished difference Result 69 states and 73 transitions. [2024-11-09 15:24:11,698 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 69 states and 73 transitions. [2024-11-09 15:24:11,699 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 20 [2024-11-09 15:24:11,699 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 69 states to 63 states and 67 transitions. [2024-11-09 15:24:11,699 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 38 [2024-11-09 15:24:11,702 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 38 [2024-11-09 15:24:11,702 INFO L73 IsDeterministic]: Start isDeterministic. Operand 63 states and 67 transitions. [2024-11-09 15:24:11,702 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:11,702 INFO L218 hiAutomatonCegarLoop]: Abstraction has 63 states and 67 transitions. [2024-11-09 15:24:11,702 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states and 67 transitions. [2024-11-09 15:24:11,704 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 56. [2024-11-09 15:24:11,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 56 states have (on average 1.0714285714285714) internal successors, (60), 55 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:24:11,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 60 transitions. [2024-11-09 15:24:11,705 INFO L240 hiAutomatonCegarLoop]: Abstraction has 56 states and 60 transitions. [2024-11-09 15:24:11,706 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2024-11-09 15:24:11,707 INFO L425 stractBuchiCegarLoop]: Abstraction has 56 states and 60 transitions. [2024-11-09 15:24:11,707 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-11-09 15:24:11,707 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 56 states and 60 transitions. [2024-11-09 15:24:11,707 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 20 [2024-11-09 15:24:11,707 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:11,707 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:11,708 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 7, 5, 2, 1, 1, 1, 1] [2024-11-09 15:24:11,708 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [5, 5, 5, 4, 1] [2024-11-09 15:24:11,708 INFO L745 eck$LassoCheckResult]: Stem: 1638#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1639#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 1640#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 1625#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 1626#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1649#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1648#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1645#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1646#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1650#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1647#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1644#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1642#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1643#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1680#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1679#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1636#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1637#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1629#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1630#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1633#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1678#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1677#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1676#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1675#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1663#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1673#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1664#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1662#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1660#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1658#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1655#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1634#L556-2 [2024-11-09 15:24:11,708 INFO L747 eck$LassoCheckResult]: Loop: 1634#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1635#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1674#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1631#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1632#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1641#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1627#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1628#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1672#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1671#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1670#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1669#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1668#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1667#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1666#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1665#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 1657#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 1661#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 1659#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 1656#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 1634#L556-2 [2024-11-09 15:24:11,708 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:11,708 INFO L85 PathProgramCache]: Analyzing trace with hash 840358071, now seen corresponding path program 6 times [2024-11-09 15:24:11,709 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:11,709 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [612124602] [2024-11-09 15:24:11,709 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:11,709 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:11,729 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:12,432 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 7 proven. 77 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:12,433 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:12,433 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [612124602] [2024-11-09 15:24:12,433 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [612124602] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:24:12,433 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1936232508] [2024-11-09 15:24:12,433 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-09 15:24:12,433 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:24:12,434 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:12,435 INFO L229 MonitoredProcess]: Starting monitored process 90 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:24:12,436 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (90)] Waiting until timeout for monitored process [2024-11-09 15:24:12,560 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2024-11-09 15:24:12,560 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:24:12,566 INFO L255 TraceCheckSpWp]: Trace formula consists of 356 conjuncts, 34 conjuncts are in the unsatisfiable core [2024-11-09 15:24:12,570 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:12,572 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-09 15:24:12,579 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-09 15:24:12,629 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-09 15:24:12,665 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-09 15:24:12,723 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-09 15:24:12,774 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-09 15:24:12,807 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-09 15:24:12,826 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-09 15:24:12,828 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-09 15:24:12,830 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 0 proven. 78 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-09 15:24:12,831 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:24:12,894 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-09 15:24:13,024 INFO L134 CoverageAnalysis]: Checked inductivity of 84 backedges. 26 proven. 52 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-09 15:24:13,025 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1936232508] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:24:13,025 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:24:13,025 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 12, 12] total 26 [2024-11-09 15:24:13,025 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2134777445] [2024-11-09 15:24:13,025 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:24:13,025 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:13,026 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:13,026 INFO L85 PathProgramCache]: Analyzing trace with hash -896652607, now seen corresponding path program 2 times [2024-11-09 15:24:13,026 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:13,026 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1143646526] [2024-11-09 15:24:13,026 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:13,026 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:13,038 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:13,038 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:13,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:13,047 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:13,790 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:13,790 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2024-11-09 15:24:13,791 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=84, Invalid=618, Unknown=0, NotChecked=0, Total=702 [2024-11-09 15:24:13,791 INFO L87 Difference]: Start difference. First operand 56 states and 60 transitions. cyclomatic complexity: 7 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-09 15:24:14,177 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:14,177 INFO L93 Difference]: Finished difference Result 82 states and 86 transitions. [2024-11-09 15:24:14,177 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 82 states and 86 transitions. [2024-11-09 15:24:14,178 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 20 [2024-11-09 15:24:14,178 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 82 states to 59 states and 62 transitions. [2024-11-09 15:24:14,179 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 36 [2024-11-09 15:24:14,179 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2024-11-09 15:24:14,179 INFO L73 IsDeterministic]: Start isDeterministic. Operand 59 states and 62 transitions. [2024-11-09 15:24:14,179 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:14,179 INFO L218 hiAutomatonCegarLoop]: Abstraction has 59 states and 62 transitions. [2024-11-09 15:24:14,179 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states and 62 transitions. [2024-11-09 15:24:14,181 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 56. [2024-11-09 15:24:14,181 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-09 15:24:14,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 59 transitions. [2024-11-09 15:24:14,181 INFO L240 hiAutomatonCegarLoop]: Abstraction has 56 states and 59 transitions. [2024-11-09 15:24:14,186 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-11-09 15:24:14,187 INFO L425 stractBuchiCegarLoop]: Abstraction has 56 states and 59 transitions. [2024-11-09 15:24:14,187 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-11-09 15:24:14,187 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 56 states and 59 transitions. [2024-11-09 15:24:14,187 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 20 [2024-11-09 15:24:14,187 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:14,187 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:14,188 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 8, 6, 2, 1, 1, 1, 1] [2024-11-09 15:24:14,188 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [5, 5, 5, 4, 1] [2024-11-09 15:24:14,188 INFO L745 eck$LassoCheckResult]: Stem: 2020#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 2021#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 2022#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 2009#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 2010#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2031#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2029#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2026#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2027#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2033#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2035#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2034#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2032#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2030#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2028#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2025#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2024#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2023#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2013#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2014#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2016#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2019#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2062#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2060#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2058#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2056#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2054#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2052#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2050#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2044#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2047#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2045#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2043#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2041#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2039#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2036#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2017#L556-2 [2024-11-09 15:24:14,188 INFO L747 eck$LassoCheckResult]: Loop: 2017#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2018#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2011#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2012#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2015#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2064#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2063#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2061#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2059#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2057#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2055#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2053#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2051#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2049#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2048#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2046#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2038#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2042#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2040#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2037#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2017#L556-2 [2024-11-09 15:24:14,188 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:14,188 INFO L85 PathProgramCache]: Analyzing trace with hash 901404637, now seen corresponding path program 7 times [2024-11-09 15:24:14,188 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:14,189 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1146441862] [2024-11-09 15:24:14,189 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:14,189 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:14,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:14,931 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 10 proven. 102 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:14,931 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:14,931 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1146441862] [2024-11-09 15:24:14,931 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1146441862] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:24:14,931 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1695454267] [2024-11-09 15:24:14,931 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-09 15:24:14,931 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:24:14,931 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:14,934 INFO L229 MonitoredProcess]: Starting monitored process 91 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:24:14,935 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (91)] Waiting until timeout for monitored process [2024-11-09 15:24:15,042 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:15,045 INFO L255 TraceCheckSpWp]: Trace formula consists of 393 conjuncts, 30 conjuncts are in the unsatisfiable core [2024-11-09 15:24:15,047 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:15,050 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-09 15:24:15,072 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-09 15:24:15,111 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-09 15:24:15,141 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-09 15:24:15,186 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-09 15:24:15,220 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-09 15:24:15,228 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-09 15:24:15,261 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-09 15:24:15,286 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-09 15:24:15,288 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-09 15:24:15,289 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-09 15:24:15,289 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:24:15,337 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-09 15:24:15,421 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-09 15:24:15,430 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-09 15:24:15,431 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1695454267] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:24:15,431 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:24:15,431 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14, 14] total 26 [2024-11-09 15:24:15,431 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1696502961] [2024-11-09 15:24:15,431 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:24:15,431 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:15,431 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:15,431 INFO L85 PathProgramCache]: Analyzing trace with hash -896652607, now seen corresponding path program 3 times [2024-11-09 15:24:15,431 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:15,431 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [31206333] [2024-11-09 15:24:15,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:15,432 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:15,441 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:15,441 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:15,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:15,448 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:16,180 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:16,181 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2024-11-09 15:24:16,181 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=77, Invalid=625, Unknown=0, NotChecked=0, Total=702 [2024-11-09 15:24:16,181 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.4615384615384617) internal successors, (64), 27 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:24:16,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:16,854 INFO L93 Difference]: Finished difference Result 86 states and 90 transitions. [2024-11-09 15:24:16,854 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 86 states and 90 transitions. [2024-11-09 15:24:16,855 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 20 [2024-11-09 15:24:16,855 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 86 states to 63 states and 66 transitions. [2024-11-09 15:24:16,855 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 36 [2024-11-09 15:24:16,855 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2024-11-09 15:24:16,855 INFO L73 IsDeterministic]: Start isDeterministic. Operand 63 states and 66 transitions. [2024-11-09 15:24:16,856 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:16,856 INFO L218 hiAutomatonCegarLoop]: Abstraction has 63 states and 66 transitions. [2024-11-09 15:24:16,856 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states and 66 transitions. [2024-11-09 15:24:16,857 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 60. [2024-11-09 15:24:16,857 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-09 15:24:16,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 63 transitions. [2024-11-09 15:24:16,858 INFO L240 hiAutomatonCegarLoop]: Abstraction has 60 states and 63 transitions. [2024-11-09 15:24:16,859 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2024-11-09 15:24:16,859 INFO L425 stractBuchiCegarLoop]: Abstraction has 60 states and 63 transitions. [2024-11-09 15:24:16,859 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-11-09 15:24:16,859 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 60 states and 63 transitions. [2024-11-09 15:24:16,860 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 20 [2024-11-09 15:24:16,860 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:16,860 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:16,860 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [9, 9, 9, 7, 2, 1, 1, 1, 1] [2024-11-09 15:24:16,860 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [5, 5, 5, 4, 1] [2024-11-09 15:24:16,860 INFO L745 eck$LassoCheckResult]: Stem: 2441#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 2442#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 2447#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 2433#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 2434#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2456#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2454#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2451#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2452#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2464#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2463#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2462#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2461#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2458#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2460#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2459#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2457#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2455#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2453#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2450#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2448#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2449#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2490#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2488#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2445#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2446#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2437#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2438#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2440#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2485#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2483#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2481#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2479#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2473#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2476#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2474#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2472#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2470#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2468#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2465#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2443#L556-2 [2024-11-09 15:24:16,861 INFO L747 eck$LassoCheckResult]: Loop: 2443#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2444#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2435#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2436#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2439#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2492#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2491#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2489#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2487#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2486#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2484#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2482#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2480#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2478#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2477#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2475#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2467#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2471#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2469#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2466#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2443#L556-2 [2024-11-09 15:24:16,861 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:16,861 INFO L85 PathProgramCache]: Analyzing trace with hash -1348611069, now seen corresponding path program 8 times [2024-11-09 15:24:16,861 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:16,861 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1596299919] [2024-11-09 15:24:16,861 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:16,861 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:16,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:17,528 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 6 proven. 138 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:17,529 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:17,530 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1596299919] [2024-11-09 15:24:17,530 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1596299919] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:24:17,530 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1765740516] [2024-11-09 15:24:17,530 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-09 15:24:17,530 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:24:17,530 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:17,531 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-09 15:24:17,533 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-09 15:24:17,652 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-09 15:24:17,652 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:24:17,654 INFO L255 TraceCheckSpWp]: Trace formula consists of 430 conjuncts, 32 conjuncts are in the unsatisfiable core [2024-11-09 15:24:17,661 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:17,679 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-09 15:24:17,708 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-09 15:24:17,750 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-09 15:24:17,790 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-09 15:24:17,879 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-09 15:24:17,908 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 58 treesize of output 38 [2024-11-09 15:24:17,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 49 treesize of output 33 [2024-11-09 15:24:18,038 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 33 [2024-11-09 15:24:18,089 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 33 [2024-11-09 15:24:18,143 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 33 [2024-11-09 15:24:18,189 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-09 15:24:18,192 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-09 15:24:18,222 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 1 proven. 143 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:18,224 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:24:18,437 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 53 treesize of output 37 [2024-11-09 15:24:18,595 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 11 proven. 133 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:18,596 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1765740516] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:24:18,596 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:24:18,596 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16, 16] total 36 [2024-11-09 15:24:18,596 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1455491937] [2024-11-09 15:24:18,596 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:24:18,596 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:18,596 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:18,596 INFO L85 PathProgramCache]: Analyzing trace with hash -896652607, now seen corresponding path program 4 times [2024-11-09 15:24:18,597 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:18,597 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2091351944] [2024-11-09 15:24:18,597 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:18,597 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:18,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:18,606 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:18,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:18,616 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:19,312 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:19,313 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2024-11-09 15:24:19,313 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=190, Invalid=1142, Unknown=0, NotChecked=0, Total=1332 [2024-11-09 15:24:19,313 INFO L87 Difference]: Start difference. First operand 60 states and 63 transitions. cyclomatic complexity: 6 Second operand has 37 states, 36 states have (on average 2.611111111111111) internal successors, (94), 37 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-09 15:24:19,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:19,741 INFO L93 Difference]: Finished difference Result 77 states and 80 transitions. [2024-11-09 15:24:19,741 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 77 states and 80 transitions. [2024-11-09 15:24:19,741 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 24 [2024-11-09 15:24:19,742 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 77 states to 74 states and 77 transitions. [2024-11-09 15:24:19,742 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 40 [2024-11-09 15:24:19,742 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 40 [2024-11-09 15:24:19,742 INFO L73 IsDeterministic]: Start isDeterministic. Operand 74 states and 77 transitions. [2024-11-09 15:24:19,742 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:19,742 INFO L218 hiAutomatonCegarLoop]: Abstraction has 74 states and 77 transitions. [2024-11-09 15:24:19,742 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states and 77 transitions. [2024-11-09 15:24:19,743 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 68. [2024-11-09 15:24:19,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 68 states have (on average 1.0441176470588236) internal successors, (71), 67 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:24:19,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 71 transitions. [2024-11-09 15:24:19,747 INFO L240 hiAutomatonCegarLoop]: Abstraction has 68 states and 71 transitions. [2024-11-09 15:24:19,747 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2024-11-09 15:24:19,747 INFO L425 stractBuchiCegarLoop]: Abstraction has 68 states and 71 transitions. [2024-11-09 15:24:19,748 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-11-09 15:24:19,748 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 68 states and 71 transitions. [2024-11-09 15:24:19,748 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 24 [2024-11-09 15:24:19,749 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:19,749 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:19,750 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [10, 10, 10, 8, 2, 1, 1, 1, 1] [2024-11-09 15:24:19,750 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [6, 6, 6, 5, 1] [2024-11-09 15:24:19,750 INFO L745 eck$LassoCheckResult]: Stem: 2885#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 2886#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 2887#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 2874#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 2875#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2904#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2902#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2899#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2900#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2920#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2878#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2879#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2881#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2884#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2905#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2894#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2895#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2903#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2901#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2898#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2882#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2883#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2889#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2919#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2918#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2917#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2916#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2915#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2914#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2913#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2912#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2911#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2910#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2909#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2908#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2907#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2906#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2893#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2896#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2897#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2891#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2892#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2924#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2921#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2890#L556-2 [2024-11-09 15:24:19,751 INFO L747 eck$LassoCheckResult]: Loop: 2890#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2888#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2876#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2877#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2880#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2941#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2940#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2939#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2938#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2937#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2936#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2935#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2934#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2933#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2932#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2931#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2930#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2929#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2928#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2927#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 2923#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 2926#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 2925#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 2922#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 2890#L556-2 [2024-11-09 15:24:19,751 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:19,751 INFO L85 PathProgramCache]: Analyzing trace with hash 1151958057, now seen corresponding path program 9 times [2024-11-09 15:24:19,751 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:19,751 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [145759775] [2024-11-09 15:24:19,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:19,754 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:19,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:20,620 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 15 proven. 165 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:20,620 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:20,620 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [145759775] [2024-11-09 15:24:20,620 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [145759775] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:24:20,620 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [637823168] [2024-11-09 15:24:20,621 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-09 15:24:20,621 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:24:20,621 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:20,622 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-09 15:24:20,623 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-09 15:24:20,759 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2024-11-09 15:24:20,759 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:24:20,761 INFO L255 TraceCheckSpWp]: Trace formula consists of 393 conjuncts, 50 conjuncts are in the unsatisfiable core [2024-11-09 15:24:20,764 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:20,768 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-09 15:24:20,809 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-09 15:24:20,841 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-09 15:24:20,916 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-09 15:24:21,036 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 37 treesize of output 21 [2024-11-09 15:24:21,171 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 51 treesize of output 31 [2024-11-09 15:24:21,358 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 65 treesize of output 41 [2024-11-09 15:24:21,428 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 92 treesize of output 64 [2024-11-09 15:24:21,531 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-09 15:24:21,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 38 treesize of output 22 [2024-11-09 15:24:21,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 28 treesize of output 16 [2024-11-09 15:24:21,633 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-09 15:24:21,655 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 39 proven. 129 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2024-11-09 15:24:21,655 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:24:22,432 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 12 proven. 156 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2024-11-09 15:24:22,432 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [637823168] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:24:22,432 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:24:22,432 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 21, 21] total 55 [2024-11-09 15:24:22,432 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1439469930] [2024-11-09 15:24:22,432 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:24:22,433 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:22,433 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:22,433 INFO L85 PathProgramCache]: Analyzing trace with hash 770982887, now seen corresponding path program 5 times [2024-11-09 15:24:22,433 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:22,433 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [407998260] [2024-11-09 15:24:22,433 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:22,433 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:22,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:22,443 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:22,448 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:22,450 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:23,598 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:23,599 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 56 interpolants. [2024-11-09 15:24:23,600 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=489, Invalid=2591, Unknown=0, NotChecked=0, Total=3080 [2024-11-09 15:24:23,600 INFO L87 Difference]: Start difference. First operand 68 states and 71 transitions. cyclomatic complexity: 6 Second operand has 56 states, 55 states have (on average 2.036363636363636) internal successors, (112), 56 states have internal predecessors, (112), 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-09 15:24:25,129 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:25,130 INFO L93 Difference]: Finished difference Result 139 states and 143 transitions. [2024-11-09 15:24:25,130 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 139 states and 143 transitions. [2024-11-09 15:24:25,130 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:24:25,131 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 139 states to 127 states and 131 transitions. [2024-11-09 15:24:25,131 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 60 [2024-11-09 15:24:25,131 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 60 [2024-11-09 15:24:25,131 INFO L73 IsDeterministic]: Start isDeterministic. Operand 127 states and 131 transitions. [2024-11-09 15:24:25,132 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:25,132 INFO L218 hiAutomatonCegarLoop]: Abstraction has 127 states and 131 transitions. [2024-11-09 15:24:25,133 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states and 131 transitions. [2024-11-09 15:24:25,135 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 100. [2024-11-09 15:24:25,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 100 states have (on average 1.03) internal successors, (103), 99 states have internal predecessors, (103), 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-09 15:24:25,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 103 transitions. [2024-11-09 15:24:25,136 INFO L240 hiAutomatonCegarLoop]: Abstraction has 100 states and 103 transitions. [2024-11-09 15:24:25,137 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 58 states. [2024-11-09 15:24:25,138 INFO L425 stractBuchiCegarLoop]: Abstraction has 100 states and 103 transitions. [2024-11-09 15:24:25,138 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-11-09 15:24:25,138 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 100 states and 103 transitions. [2024-11-09 15:24:25,138 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:24:25,138 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:25,138 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:25,139 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [14, 14, 14, 12, 2, 1, 1, 1, 1] [2024-11-09 15:24:25,139 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 10, 9, 1] [2024-11-09 15:24:25,139 INFO L745 eck$LassoCheckResult]: Stem: 3495#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 3496#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 3497#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 3482#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 3483#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3506#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3505#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3503#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3504#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3544#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3543#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3542#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3493#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3494#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3541#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3511#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3509#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3508#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3507#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3502#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3491#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3492#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3486#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3487#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3490#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3540#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3539#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3538#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3537#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3536#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3535#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3534#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3533#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3532#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3531#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3530#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3529#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3528#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3527#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3526#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3525#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3524#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3523#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3522#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3521#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3520#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3519#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3518#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3517#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3516#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3515#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3514#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3513#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3501#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3512#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3510#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3499#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3500#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3549#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3545#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3546#L556-2 [2024-11-09 15:24:25,140 INFO L747 eck$LassoCheckResult]: Loop: 3546#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3581#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3580#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3488#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3489#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3498#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3484#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3485#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3579#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3578#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3577#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3576#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3575#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3574#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3573#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3572#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3571#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3570#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3569#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3568#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3567#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3566#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3565#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3564#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3563#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3562#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3561#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3560#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3559#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3558#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3557#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3556#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3555#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3554#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3553#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3552#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 3548#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 3551#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 3550#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 3547#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 3546#L556-2 [2024-11-09 15:24:25,140 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:25,140 INFO L85 PathProgramCache]: Analyzing trace with hash 888798913, now seen corresponding path program 10 times [2024-11-09 15:24:25,140 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:25,140 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1434620833] [2024-11-09 15:24:25,140 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:25,140 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:25,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:26,192 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 4 proven. 336 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2024-11-09 15:24:26,193 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:26,193 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1434620833] [2024-11-09 15:24:26,193 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1434620833] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:24:26,193 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [150363648] [2024-11-09 15:24:26,193 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-09 15:24:26,193 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:24:26,194 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:26,195 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-09 15:24:26,200 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-09 15:24:26,353 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-09 15:24:26,353 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:24:26,356 INFO L255 TraceCheckSpWp]: Trace formula consists of 615 conjuncts, 34 conjuncts are in the unsatisfiable core [2024-11-09 15:24:26,358 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:26,360 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-09 15:24:26,370 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-09 15:24:26,379 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-09 15:24:26,413 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-09 15:24:26,449 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-09 15:24:26,513 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-09 15:24:26,548 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-09 15:24:26,557 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-09 15:24:26,566 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-09 15:24:26,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 45 treesize of output 29 [2024-11-09 15:24:26,624 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-09 15:24:26,626 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-09 15:24:26,627 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 0 proven. 319 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2024-11-09 15:24:26,628 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:24:26,710 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-09 15:24:26,841 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-09 15:24:26,860 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 31 proven. 288 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2024-11-09 15:24:26,860 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [150363648] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:24:26,860 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:24:26,860 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 16, 16] total 27 [2024-11-09 15:24:26,860 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1335845699] [2024-11-09 15:24:26,860 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:24:26,860 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:26,861 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:26,861 INFO L85 PathProgramCache]: Analyzing trace with hash 870943359, now seen corresponding path program 6 times [2024-11-09 15:24:26,861 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:26,861 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1971212663] [2024-11-09 15:24:26,861 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:26,861 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:26,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:26,879 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:26,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:26,892 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:34,095 WARN L286 SmtUtils]: Spent 7.20s 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-09 15:24:34,195 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:34,195 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2024-11-09 15:24:34,196 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=81, Invalid=675, Unknown=0, NotChecked=0, Total=756 [2024-11-09 15:24:34,196 INFO L87 Difference]: Start difference. First operand 100 states and 103 transitions. cyclomatic complexity: 6 Second operand has 28 states, 27 states have (on average 2.5185185185185186) internal successors, (68), 28 states have internal predecessors, (68), 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-09 15:24:34,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:34,710 INFO L93 Difference]: Finished difference Result 150 states and 154 transitions. [2024-11-09 15:24:34,711 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 150 states and 154 transitions. [2024-11-09 15:24:34,711 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:24:34,712 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 150 states to 107 states and 110 transitions. [2024-11-09 15:24:34,712 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 56 [2024-11-09 15:24:34,712 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 56 [2024-11-09 15:24:34,712 INFO L73 IsDeterministic]: Start isDeterministic. Operand 107 states and 110 transitions. [2024-11-09 15:24:34,712 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:34,712 INFO L218 hiAutomatonCegarLoop]: Abstraction has 107 states and 110 transitions. [2024-11-09 15:24:34,712 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 107 states and 110 transitions. [2024-11-09 15:24:34,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 107 to 104. [2024-11-09 15:24:34,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 104 states, 104 states have (on average 1.0288461538461537) internal successors, (107), 103 states have internal predecessors, (107), 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-09 15:24:34,719 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 104 states to 104 states and 107 transitions. [2024-11-09 15:24:34,720 INFO L240 hiAutomatonCegarLoop]: Abstraction has 104 states and 107 transitions. [2024-11-09 15:24:34,720 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2024-11-09 15:24:34,720 INFO L425 stractBuchiCegarLoop]: Abstraction has 104 states and 107 transitions. [2024-11-09 15:24:34,721 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-11-09 15:24:34,721 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 104 states and 107 transitions. [2024-11-09 15:24:34,721 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:24:34,721 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:34,721 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:34,722 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [15, 15, 15, 13, 2, 1, 1, 1, 1] [2024-11-09 15:24:34,722 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 10, 9, 1] [2024-11-09 15:24:34,722 INFO L745 eck$LassoCheckResult]: Stem: 4163#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 4164#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 4165#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 4151#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 4152#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4180#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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; 4155#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4156#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4159#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4162#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4217#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4216#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4215#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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; 4168#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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 main_#t~mem18#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4173#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4179#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4177#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4174#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4175#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4214#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4213#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4212#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4211#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4210#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4209#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4208#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4207#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4206#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4205#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4204#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4203#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4202#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4201#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4200#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4199#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4196#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4194#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4193#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4191#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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; 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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4171#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4182#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4181#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4169#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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; 4222#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4218#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4219#L556-2 [2024-11-09 15:24:34,722 INFO L747 eck$LassoCheckResult]: Loop: 4219#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4254#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4253#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4157#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4158#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4166#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4153#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4154#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4252#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4251#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4250#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4249#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4248#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4247#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4246#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4245#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4244#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4243#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4242#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4241#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4240#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4239#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4238#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4237#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4236#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4235#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4234#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4233#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4232#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4231#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4230#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4229#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4228#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4227#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4226#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4225#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4221#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4224#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4223#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4220#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4219#L556-2 [2024-11-09 15:24:34,723 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:34,723 INFO L85 PathProgramCache]: Analyzing trace with hash -95098649, now seen corresponding path program 11 times [2024-11-09 15:24:34,723 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:34,723 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [443546836] [2024-11-09 15:24:34,723 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:34,723 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:34,748 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:35,836 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 4 proven. 404 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2024-11-09 15:24:35,836 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:35,836 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [443546836] [2024-11-09 15:24:35,836 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [443546836] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:24:35,836 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [678206248] [2024-11-09 15:24:35,836 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-09 15:24:35,837 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:24:35,837 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:35,838 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-09 15:24:35,838 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-09 15:24:36,116 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 15 check-sat command(s) [2024-11-09 15:24:36,116 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:24:36,119 INFO L255 TraceCheckSpWp]: Trace formula consists of 652 conjuncts, 38 conjuncts are in the unsatisfiable core [2024-11-09 15:24:36,122 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:36,125 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-09 15:24:36,132 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-09 15:24:36,139 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-09 15:24:36,148 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-09 15:24:36,180 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-09 15:24:36,218 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-09 15:24:36,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 43 treesize of output 31 [2024-11-09 15:24:36,311 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-09 15:24:36,319 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-09 15:24:36,329 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-09 15:24:36,341 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-09 15:24:36,380 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-09 15:24:36,409 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-09 15:24:36,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 17 treesize of output 9 [2024-11-09 15:24:36,413 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 0 proven. 392 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2024-11-09 15:24:36,413 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:24:36,504 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-09 15:24:36,606 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-09 15:24:36,634 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 26 proven. 366 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2024-11-09 15:24:36,634 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [678206248] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:24:36,635 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:24:36,635 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 18, 18] total 29 [2024-11-09 15:24:36,635 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [25470478] [2024-11-09 15:24:36,635 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:24:36,635 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:36,635 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:36,635 INFO L85 PathProgramCache]: Analyzing trace with hash 870943359, now seen corresponding path program 7 times [2024-11-09 15:24:36,635 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:36,635 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2030683736] [2024-11-09 15:24:36,635 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:36,636 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:36,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:36,650 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:36,656 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:36,660 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:43,724 WARN L286 SmtUtils]: Spent 7.06s 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-09 15:24:43,824 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:43,824 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2024-11-09 15:24:43,825 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=84, Invalid=786, Unknown=0, NotChecked=0, Total=870 [2024-11-09 15:24:43,825 INFO L87 Difference]: Start difference. First operand 104 states and 107 transitions. cyclomatic complexity: 6 Second operand has 30 states, 29 states have (on average 2.6206896551724137) internal successors, (76), 30 states have internal predecessors, (76), 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-09 15:24:44,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:44,486 INFO L93 Difference]: Finished difference Result 154 states and 158 transitions. [2024-11-09 15:24:44,487 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 154 states and 158 transitions. [2024-11-09 15:24:44,487 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:24:44,488 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 154 states to 111 states and 114 transitions. [2024-11-09 15:24:44,488 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 56 [2024-11-09 15:24:44,488 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 56 [2024-11-09 15:24:44,488 INFO L73 IsDeterministic]: Start isDeterministic. Operand 111 states and 114 transitions. [2024-11-09 15:24:44,488 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:44,488 INFO L218 hiAutomatonCegarLoop]: Abstraction has 111 states and 114 transitions. [2024-11-09 15:24:44,488 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states and 114 transitions. [2024-11-09 15:24:44,489 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 108. [2024-11-09 15:24:44,490 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 108 states, 108 states have (on average 1.0277777777777777) internal successors, (111), 107 states have internal predecessors, (111), 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-09 15:24:44,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 108 states to 108 states and 111 transitions. [2024-11-09 15:24:44,490 INFO L240 hiAutomatonCegarLoop]: Abstraction has 108 states and 111 transitions. [2024-11-09 15:24:44,490 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2024-11-09 15:24:44,491 INFO L425 stractBuchiCegarLoop]: Abstraction has 108 states and 111 transitions. [2024-11-09 15:24:44,491 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-11-09 15:24:44,491 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 108 states and 111 transitions. [2024-11-09 15:24:44,491 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:24:44,491 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:44,491 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:44,492 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [16, 16, 16, 14, 2, 1, 1, 1, 1] [2024-11-09 15:24:44,492 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 10, 9, 1] [2024-11-09 15:24:44,492 INFO L745 eck$LassoCheckResult]: Stem: 4871#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 4872#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 4877#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 4862#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 4863#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4889#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4887#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4885#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4873#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4874#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4866#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4867#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4875#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4876#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4932#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4869#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4870#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4931#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4930#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4929#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4928#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4891#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4927#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4893#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4890#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4888#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4886#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4883#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4884#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4926#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4925#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4924#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4923#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4922#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4921#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4920#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4919#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4918#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4917#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4916#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4915#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4914#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4913#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4912#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4911#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4910#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4909#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4908#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4907#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4906#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4905#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4904#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4903#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4902#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4901#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4900#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4899#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4898#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4897#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4896#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4895#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4882#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4894#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4892#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4880#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4881#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4936#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4933#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4879#L556-2 [2024-11-09 15:24:44,492 INFO L747 eck$LassoCheckResult]: Loop: 4879#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4878#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4864#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4865#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4868#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4969#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4968#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4967#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4966#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4965#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4964#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4963#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4962#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4961#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4960#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4959#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4958#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4957#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4956#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4955#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4954#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4953#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4952#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4951#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4950#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4949#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4948#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4947#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4946#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4945#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4944#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4943#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4942#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4941#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4940#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4939#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 4935#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 4938#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 4937#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 4934#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 4879#L556-2 [2024-11-09 15:24:44,493 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:44,493 INFO L85 PathProgramCache]: Analyzing trace with hash 1715621901, now seen corresponding path program 12 times [2024-11-09 15:24:44,493 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:44,493 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [773574991] [2024-11-09 15:24:44,493 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:44,493 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:44,523 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:46,262 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 0 proven. 480 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:46,262 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:46,262 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [773574991] [2024-11-09 15:24:46,262 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [773574991] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:24:46,262 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [719789127] [2024-11-09 15:24:46,262 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-09 15:24:46,263 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:24:46,263 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:46,264 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-09 15:24:46,266 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-09 15:24:46,593 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 16 check-sat command(s) [2024-11-09 15:24:46,593 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:24:46,597 INFO L255 TraceCheckSpWp]: Trace formula consists of 689 conjuncts, 44 conjuncts are in the unsatisfiable core [2024-11-09 15:24:46,602 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:46,604 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-09 15:24:46,606 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-09 15:24:46,641 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-09 15:24:46,670 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-09 15:24:46,703 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-09 15:24:46,741 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-09 15:24:46,819 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-09 15:24:46,864 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-09 15:24:46,948 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-09 15:24:47,028 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-09 15:24:47,082 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-09 15:24:47,140 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-09 15:24:47,194 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-09 15:24:47,240 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-09 15:24:47,334 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-09 15:24:47,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 21 treesize of output 13 [2024-11-09 15:24:47,381 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-09 15:24:47,384 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 0 proven. 465 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2024-11-09 15:24:47,384 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:24:47,597 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-09 15:24:47,994 INFO L134 CoverageAnalysis]: Checked inductivity of 480 backedges. 102 proven. 363 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2024-11-09 15:24:47,994 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [719789127] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:24:47,994 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:24:47,994 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 20, 20] total 51 [2024-11-09 15:24:47,994 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [121437366] [2024-11-09 15:24:47,994 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:24:47,995 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:47,995 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:47,995 INFO L85 PathProgramCache]: Analyzing trace with hash 870943359, now seen corresponding path program 8 times [2024-11-09 15:24:47,995 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:47,995 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [529561656] [2024-11-09 15:24:47,995 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:47,995 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:48,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:48,010 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:48,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:48,021 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:24:55,201 WARN L286 SmtUtils]: Spent 7.18s 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-09 15:24:55,306 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:24:55,306 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 52 interpolants. [2024-11-09 15:24:55,307 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=160, Invalid=2492, Unknown=0, NotChecked=0, Total=2652 [2024-11-09 15:24:55,307 INFO L87 Difference]: Start difference. First operand 108 states and 111 transitions. cyclomatic complexity: 6 Second operand has 52 states, 51 states have (on average 2.9607843137254903) internal successors, (151), 52 states have internal predecessors, (151), 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-09 15:24:57,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:24:57,637 INFO L93 Difference]: Finished difference Result 173 states and 178 transitions. [2024-11-09 15:24:57,637 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 173 states and 178 transitions. [2024-11-09 15:24:57,638 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:24:57,638 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 173 states to 115 states and 118 transitions. [2024-11-09 15:24:57,638 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 56 [2024-11-09 15:24:57,638 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 56 [2024-11-09 15:24:57,638 INFO L73 IsDeterministic]: Start isDeterministic. Operand 115 states and 118 transitions. [2024-11-09 15:24:57,639 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:24:57,639 INFO L218 hiAutomatonCegarLoop]: Abstraction has 115 states and 118 transitions. [2024-11-09 15:24:57,639 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states and 118 transitions. [2024-11-09 15:24:57,643 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 112. [2024-11-09 15:24:57,644 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-09 15:24:57,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 115 transitions. [2024-11-09 15:24:57,644 INFO L240 hiAutomatonCegarLoop]: Abstraction has 112 states and 115 transitions. [2024-11-09 15:24:57,644 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 52 states. [2024-11-09 15:24:57,645 INFO L425 stractBuchiCegarLoop]: Abstraction has 112 states and 115 transitions. [2024-11-09 15:24:57,645 INFO L332 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2024-11-09 15:24:57,645 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 112 states and 115 transitions. [2024-11-09 15:24:57,645 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:24:57,645 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:24:57,645 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:24:57,646 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [17, 17, 17, 15, 2, 1, 1, 1, 1] [2024-11-09 15:24:57,646 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 10, 9, 1] [2024-11-09 15:24:57,646 INFO L745 eck$LassoCheckResult]: Stem: 5700#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 5701#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 5702#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 5688#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 5689#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5715#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5713#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5711#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5696#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5697#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5704#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5762#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5698#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5699#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5692#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5693#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5695#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5761#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5760#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5759#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5758#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5757#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5756#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5755#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5754#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5717#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5753#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5719#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5716#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5714#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5712#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5709#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 5710#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5752#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5751#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5750#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5749#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5748#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5747#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5746#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5745#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5744#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5743#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5742#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5741#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5740#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5739#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5738#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5737#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5736#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5735#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5734#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5733#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5732#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5731#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5730#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5729#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5728#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5727#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5726#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5725#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5724#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5723#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5722#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5721#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5708#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5720#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5718#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5706#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5707#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5766#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5763#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 5705#L556-2 [2024-11-09 15:24:57,647 INFO L747 eck$LassoCheckResult]: Loop: 5705#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5703#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5690#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5691#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5694#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5799#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5798#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5797#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5796#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5795#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5794#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5793#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5792#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5791#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5790#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5789#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5788#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5787#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5786#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5785#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5784#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5783#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5782#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5781#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5780#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5779#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5778#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5777#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5776#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5775#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5774#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5773#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5772#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5771#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5770#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5769#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 5765#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 5768#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 5767#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 5764#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 5705#L556-2 [2024-11-09 15:24:57,647 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:57,647 INFO L85 PathProgramCache]: Analyzing trace with hash -1053051853, now seen corresponding path program 13 times [2024-11-09 15:24:57,647 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:57,647 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [185117889] [2024-11-09 15:24:57,647 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:57,647 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:57,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:59,157 INFO L134 CoverageAnalysis]: Checked inductivity of 544 backedges. 4 proven. 540 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:24:59,157 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:24:59,157 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [185117889] [2024-11-09 15:24:59,157 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [185117889] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:24:59,158 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1748900144] [2024-11-09 15:24:59,158 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-09 15:24:59,158 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:24:59,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:24:59,160 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-09 15:24:59,161 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-09 15:24:59,326 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:24:59,328 INFO L255 TraceCheckSpWp]: Trace formula consists of 726 conjuncts, 46 conjuncts are in the unsatisfiable core [2024-11-09 15:24:59,331 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:24:59,333 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-09 15:24:59,340 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-09 15:24:59,347 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-09 15:24:59,353 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-09 15:24:59,360 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-09 15:24:59,369 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-09 15:24:59,419 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-09 15:24:59,457 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-09 15:24:59,503 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-09 15:24:59,544 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-09 15:24:59,553 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-09 15:24:59,562 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-09 15:24:59,572 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-09 15:24:59,580 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-09 15:24:59,587 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-09 15:24:59,623 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-09 15:24:59,652 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-09 15:24:59,657 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-09 15:24:59,663 INFO L134 CoverageAnalysis]: Checked inductivity of 544 backedges. 0 proven. 538 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-09 15:24:59,663 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:24:59,803 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-09 15:24:59,925 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-09 15:24:59,954 INFO L134 CoverageAnalysis]: Checked inductivity of 544 backedges. 16 proven. 522 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-11-09 15:24:59,954 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1748900144] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:24:59,954 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:24:59,954 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 22, 22] total 33 [2024-11-09 15:24:59,954 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1040692166] [2024-11-09 15:24:59,954 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:24:59,955 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:24:59,955 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:24:59,955 INFO L85 PathProgramCache]: Analyzing trace with hash 870943359, now seen corresponding path program 9 times [2024-11-09 15:24:59,955 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:24:59,955 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1897647461] [2024-11-09 15:24:59,955 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:24:59,955 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:24:59,970 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:59,970 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:24:59,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:24:59,981 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:25:07,308 WARN L286 SmtUtils]: Spent 7.32s 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-09 15:25:07,407 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:25:07,407 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2024-11-09 15:25:07,408 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=92, Invalid=1030, Unknown=0, NotChecked=0, Total=1122 [2024-11-09 15:25:07,408 INFO L87 Difference]: Start difference. First operand 112 states and 115 transitions. cyclomatic complexity: 6 Second operand has 34 states, 33 states have (on average 2.787878787878788) internal successors, (92), 34 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:25:08,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:25:08,463 INFO L93 Difference]: Finished difference Result 162 states and 166 transitions. [2024-11-09 15:25:08,463 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 162 states and 166 transitions. [2024-11-09 15:25:08,464 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:25:08,464 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 162 states to 119 states and 122 transitions. [2024-11-09 15:25:08,464 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 56 [2024-11-09 15:25:08,464 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 56 [2024-11-09 15:25:08,464 INFO L73 IsDeterministic]: Start isDeterministic. Operand 119 states and 122 transitions. [2024-11-09 15:25:08,464 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:25:08,464 INFO L218 hiAutomatonCegarLoop]: Abstraction has 119 states and 122 transitions. [2024-11-09 15:25:08,465 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states and 122 transitions. [2024-11-09 15:25:08,466 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 116. [2024-11-09 15:25:08,466 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-09 15:25:08,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 119 transitions. [2024-11-09 15:25:08,466 INFO L240 hiAutomatonCegarLoop]: Abstraction has 116 states and 119 transitions. [2024-11-09 15:25:08,467 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 37 states. [2024-11-09 15:25:08,468 INFO L425 stractBuchiCegarLoop]: Abstraction has 116 states and 119 transitions. [2024-11-09 15:25:08,468 INFO L332 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2024-11-09 15:25:08,468 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 116 states and 119 transitions. [2024-11-09 15:25:08,468 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:25:08,469 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:25:08,469 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:25:08,469 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [18, 18, 18, 16, 2, 1, 1, 1, 1] [2024-11-09 15:25:08,469 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 10, 9, 1] [2024-11-09 15:25:08,470 INFO L745 eck$LassoCheckResult]: Stem: 6492#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 6493#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 6494#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 6479#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 6480#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6506#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6504#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6502#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6488#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6489#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6496#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6557#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6490#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6491#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6483#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6484#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6487#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6556#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6555#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6554#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6553#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6552#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6551#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6550#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6549#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6548#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6547#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6546#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6545#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6508#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6544#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6510#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6507#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6505#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6503#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6500#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 6501#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6543#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6542#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6541#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6540#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6539#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6538#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6537#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6536#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6535#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6534#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6533#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6532#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6531#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6530#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6529#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6528#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6527#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6526#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6525#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6524#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6523#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6522#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6521#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6520#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6519#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6518#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6517#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6516#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6515#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6514#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6513#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6512#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6499#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6511#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6509#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6497#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6498#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6562#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6558#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 6559#L556-2 [2024-11-09 15:25:08,470 INFO L747 eck$LassoCheckResult]: Loop: 6559#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6594#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6593#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6485#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6486#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6495#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6481#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6482#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6592#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6591#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6590#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6589#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6588#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6587#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6586#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6585#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6584#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6583#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6582#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6581#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6580#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6579#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6578#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6577#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6576#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6575#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6574#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6573#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6572#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6571#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6570#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6569#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6568#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6567#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6566#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6565#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 6561#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 6564#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 6563#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 6560#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 6559#L556-2 [2024-11-09 15:25:08,470 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:25:08,470 INFO L85 PathProgramCache]: Analyzing trace with hash 2063242585, now seen corresponding path program 14 times [2024-11-09 15:25:08,470 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:25:08,470 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1385109185] [2024-11-09 15:25:08,471 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:25:08,471 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:25:08,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:25:10,115 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-09 15:25:10,116 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:25:10,116 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1385109185] [2024-11-09 15:25:10,116 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1385109185] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:25:10,116 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [872596001] [2024-11-09 15:25:10,116 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-09 15:25:10,116 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:25:10,117 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:25:10,118 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-09 15:25:10,119 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-09 15:25:10,325 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-09 15:25:10,325 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:25:10,328 INFO L255 TraceCheckSpWp]: Trace formula consists of 763 conjuncts, 50 conjuncts are in the unsatisfiable core [2024-11-09 15:25:10,331 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:25:10,334 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-09 15:25:10,349 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-09 15:25:10,382 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-09 15:25:10,413 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-09 15:25:10,444 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-09 15:25:10,475 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-09 15:25:10,501 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-09 15:25:10,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 44 treesize of output 28 [2024-11-09 15:25:10,596 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-09 15:25:10,655 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-09 15:25:10,690 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-09 15:25:10,696 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-09 15:25:10,706 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-09 15:25:10,713 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-09 15:25:10,722 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-09 15:25:10,730 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-09 15:25:10,737 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-09 15:25:10,774 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-09 15:25:10,799 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-09 15:25:10,801 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-09 15:25:10,802 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 0 proven. 611 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 15:25:10,802 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:25:10,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 26 treesize of output 18 [2024-11-09 15:25:11,004 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-09 15:25:11,036 INFO L134 CoverageAnalysis]: Checked inductivity of 612 backedges. 11 proven. 600 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-11-09 15:25:11,036 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [872596001] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:25:11,036 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:25:11,036 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 24, 24] total 41 [2024-11-09 15:25:11,036 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [380062929] [2024-11-09 15:25:11,037 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:25:11,037 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:25:11,037 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:25:11,037 INFO L85 PathProgramCache]: Analyzing trace with hash 870943359, now seen corresponding path program 10 times [2024-11-09 15:25:11,037 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:25:11,037 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [425602668] [2024-11-09 15:25:11,037 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:25:11,037 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:25:11,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:25:11,051 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:25:11,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:25:11,060 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:25:18,145 WARN L286 SmtUtils]: Spent 7.08s 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-09 15:25:18,238 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:25:18,239 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 42 interpolants. [2024-11-09 15:25:18,239 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=1602, Unknown=0, NotChecked=0, Total=1722 [2024-11-09 15:25:18,239 INFO L87 Difference]: Start difference. First operand 116 states and 119 transitions. cyclomatic complexity: 6 Second operand has 42 states, 41 states have (on average 2.975609756097561) internal successors, (122), 42 states have internal predecessors, (122), 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-09 15:25:20,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:25:20,673 INFO L93 Difference]: Finished difference Result 166 states and 170 transitions. [2024-11-09 15:25:20,673 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 166 states and 170 transitions. [2024-11-09 15:25:20,674 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:25:20,674 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 166 states to 123 states and 126 transitions. [2024-11-09 15:25:20,674 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 56 [2024-11-09 15:25:20,675 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 56 [2024-11-09 15:25:20,675 INFO L73 IsDeterministic]: Start isDeterministic. Operand 123 states and 126 transitions. [2024-11-09 15:25:20,675 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:25:20,675 INFO L218 hiAutomatonCegarLoop]: Abstraction has 123 states and 126 transitions. [2024-11-09 15:25:20,675 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 123 states and 126 transitions. [2024-11-09 15:25:20,676 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 123 to 120. [2024-11-09 15:25:20,676 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 120 states, 120 states have (on average 1.025) internal successors, (123), 119 states have internal predecessors, (123), 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-09 15:25:20,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 123 transitions. [2024-11-09 15:25:20,677 INFO L240 hiAutomatonCegarLoop]: Abstraction has 120 states and 123 transitions. [2024-11-09 15:25:20,678 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 62 states. [2024-11-09 15:25:20,679 INFO L425 stractBuchiCegarLoop]: Abstraction has 120 states and 123 transitions. [2024-11-09 15:25:20,679 INFO L332 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2024-11-09 15:25:20,679 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 120 states and 123 transitions. [2024-11-09 15:25:20,679 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 40 [2024-11-09 15:25:20,679 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:25:20,679 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:25:20,680 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [19, 19, 19, 17, 2, 1, 1, 1, 1] [2024-11-09 15:25:20,680 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [10, 10, 10, 9, 1] [2024-11-09 15:25:20,680 INFO L745 eck$LassoCheckResult]: Stem: 7369#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 7370#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#1(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#0(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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short9#1 := 0 <= main_#t~mem6#1; 7371#L552 assume main_#t~short9#1;call main_#t~mem7#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call main_#t~mem8#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4);main_#t~short9#1 := main_#t~mem7#1 < main_#t~mem8#1; 7356#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#1(main_~id~0#1.base, main_~id~0#1.offset, 4);call write~int#2(1 + main_#t~mem11#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem11#1; 7357#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7383#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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 main_#t~mem18#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7365#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7366#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7373#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7438#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7368#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7360#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7361#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7364#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7425#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7422#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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; 7421#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7384#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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; 7380#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 7378#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7420#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7419#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7418#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7417#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7416#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7415#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7414#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7413#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7412#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7411#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7410#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7409#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7408#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7407#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7406#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7405#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7404#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7403#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7402#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7401#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7400#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7399#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7398#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7397#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7396#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7395#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7394#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7393#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7392#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7391#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7390#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7389#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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; 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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7386#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7374#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7375#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7443#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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 write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 7440#L556-2 [2024-11-09 15:25:20,680 INFO L747 eck$LassoCheckResult]: Loop: 7440#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7475#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7474#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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 main_#t~mem18#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7363#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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; 7358#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7359#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7473#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7472#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7471#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7456#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7455#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7454#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7453#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7452#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7451#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7450#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(1 + main_#t~mem18#1, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);havoc main_#t~mem18#1; 7449#L556-2 call main_#t~mem12#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(main_~id~0#1.base, main_~id~0#1.offset, 4);main_#t~short15#1 := main_#t~mem12#1 != main_#t~mem13#1; 7448#L555-1 assume main_#t~short15#1;havoc main_#t~nondet14#1;main_#t~short15#1 := 0 != main_#t~nondet14#1; 7447#L555-3 assume !!main_#t~short15#1;havoc main_#t~mem12#1;havoc main_#t~mem13#1;havoc main_#t~nondet14#1;havoc main_#t~short15#1;call main_#t~mem16#1 := read~int#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7446#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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call write~int#2(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem13#1 := read~int#1(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#2(main_~tmp~0#1.base, main_~tmp~0#1.offset, 4);call main_#t~mem17#1 := read~int#0(main_~maxId~0#1.base, main_~maxId~0#1.offset, 4); 7441#L556 assume !(main_#t~mem16#1 < main_#t~mem17#1);havoc main_#t~mem16#1;havoc main_#t~mem17#1;call write~int#2(0, main_~tmp~0#1.base, main_~tmp~0#1.offset, 4); 7440#L556-2 [2024-11-09 15:25:20,681 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:25:20,681 INFO L85 PathProgramCache]: Analyzing trace with hash -1971817601, now seen corresponding path program 15 times [2024-11-09 15:25:20,681 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:25:20,681 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1637139245] [2024-11-09 15:25:20,681 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:25:20,681 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:25:20,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat