./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/termination-15/array13_alloca.i --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 3289d67d Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i ../sv-benchmarks/c/termination-15/array13_alloca.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 bcb4bc0abad87560c498c61782d3ccf631503b41762d0db8553a6c831cbdcaff --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.fs.icfgbuilder-eval-3289d67-m [2024-11-17 08:09:35,594 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-17 08:09:35,639 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-64bit-Automizer_Default.epf [2024-11-17 08:09:35,642 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-17 08:09:35,643 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-17 08:09:35,643 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder.Remove goto edges from RCFG [2024-11-17 08:09:35,661 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-17 08:09:35,662 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-17 08:09:35,662 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-17 08:09:35,665 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-17 08:09:35,666 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-17 08:09:35,666 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-17 08:09:35,667 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-17 08:09:35,667 INFO L153 SettingsManager]: * Use SBE=true [2024-11-17 08:09:35,669 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-11-17 08:09:35,669 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-11-17 08:09:35,669 INFO L153 SettingsManager]: * Use old map elimination=false [2024-11-17 08:09:35,669 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-11-17 08:09:35,669 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-11-17 08:09:35,670 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-11-17 08:09:35,670 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-17 08:09:35,670 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-11-17 08:09:35,671 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-17 08:09:35,671 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-17 08:09:35,671 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-11-17 08:09:35,671 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-11-17 08:09:35,671 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-11-17 08:09:35,672 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-17 08:09:35,672 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-11-17 08:09:35,672 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-17 08:09:35,672 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-11-17 08:09:35,672 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-17 08:09:35,673 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2024-11-17 08:09:35,673 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-17 08:09:35,674 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-17 08:09:35,674 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-17 08:09:35,674 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-11-17 08:09:35,674 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 -> bcb4bc0abad87560c498c61782d3ccf631503b41762d0db8553a6c831cbdcaff [2024-11-17 08:09:35,917 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-17 08:09:35,943 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-17 08:09:35,946 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-17 08:09:35,948 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-17 08:09:35,948 INFO L274 PluginConnector]: CDTParser initialized [2024-11-17 08:09:35,949 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/termination-15/array13_alloca.i [2024-11-17 08:09:37,247 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-17 08:09:37,514 INFO L384 CDTParser]: Found 1 translation units. [2024-11-17 08:09:37,514 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-15/array13_alloca.i [2024-11-17 08:09:37,529 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/471b17d76/265dd4a723b5415894556a24dd63baf4/FLAGfc1d103b0 [2024-11-17 08:09:37,546 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/471b17d76/265dd4a723b5415894556a24dd63baf4 [2024-11-17 08:09:37,551 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-17 08:09:37,552 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-17 08:09:37,553 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-17 08:09:37,553 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-17 08:09:37,558 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-17 08:09:37,558 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,559 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7a4c3199 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37, skipping insertion in model container [2024-11-17 08:09:37,560 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,603 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-17 08:09:37,827 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-17 08:09:37,835 INFO L200 MainTranslator]: Completed pre-run [2024-11-17 08:09:37,865 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-17 08:09:37,888 INFO L204 MainTranslator]: Completed translation [2024-11-17 08:09:37,888 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37 WrapperNode [2024-11-17 08:09:37,889 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-17 08:09:37,889 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-17 08:09:37,890 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-17 08:09:37,890 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-17 08:09:37,895 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,911 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,931 INFO L138 Inliner]: procedures = 151, calls = 10, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 53 [2024-11-17 08:09:37,932 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-17 08:09:37,933 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-17 08:09:37,933 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-17 08:09:37,933 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-17 08:09:37,951 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,951 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,953 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,971 INFO L175 MemorySlicer]: Split 4 memory accesses to 1 slices as follows [4]. 100 percent of accesses are in the largest equivalence class. The 0 initializations are split as follows [0]. The 2 writes are split as follows [2]. [2024-11-17 08:09:37,971 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,971 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,975 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,975 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,976 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,976 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,977 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-17 08:09:37,981 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2024-11-17 08:09:37,981 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2024-11-17 08:09:37,981 INFO L274 PluginConnector]: IcfgBuilder initialized [2024-11-17 08:09:37,982 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (1/1) ... [2024-11-17 08:09:37,990 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:09:38,002 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:38,024 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:09:38,031 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2024-11-17 08:09:38,077 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-11-17 08:09:38,077 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-11-17 08:09:38,077 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-11-17 08:09:38,078 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-11-17 08:09:38,078 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-17 08:09:38,078 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-17 08:09:38,214 INFO L256 CfgBuilder]: Building ICFG [2024-11-17 08:09:38,216 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-17 08:09:38,316 INFO L1250 $ProcedureCfgBuilder]: dead code at ProgramPoint L368: call ULTIMATE.dealloc(main_#t~malloc206#1.base, main_#t~malloc206#1.offset);havoc main_#t~malloc206#1.base, main_#t~malloc206#1.offset; [2024-11-17 08:09:38,321 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2024-11-17 08:09:38,322 INFO L307 CfgBuilder]: Performing block encoding [2024-11-17 08:09:38,331 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-17 08:09:38,331 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2024-11-17 08:09:38,332 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.11 08:09:38 BoogieIcfgContainer [2024-11-17 08:09:38,332 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2024-11-17 08:09:38,334 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-11-17 08:09:38,334 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-11-17 08:09:38,337 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-11-17 08:09:38,339 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-17 08:09:38,339 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 17.11 08:09:37" (1/3) ... [2024-11-17 08:09:38,340 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@5a8e15dd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 17.11 08:09:38, skipping insertion in model container [2024-11-17 08:09:38,340 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-17 08:09:38,340 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 17.11 08:09:37" (2/3) ... [2024-11-17 08:09:38,341 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@5a8e15dd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 17.11 08:09:38, skipping insertion in model container [2024-11-17 08:09:38,341 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-17 08:09:38,341 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.11 08:09:38" (3/3) ... [2024-11-17 08:09:38,342 INFO L332 chiAutomizerObserver]: Analyzing ICFG array13_alloca.i [2024-11-17 08:09:38,398 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-11-17 08:09:38,398 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-11-17 08:09:38,398 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-11-17 08:09:38,398 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-11-17 08:09:38,398 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-11-17 08:09:38,399 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-11-17 08:09:38,399 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-11-17 08:09:38,399 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-11-17 08:09:38,403 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 17 states, 16 states have (on average 1.5) internal successors, (24), 16 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:38,420 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 7 [2024-11-17 08:09:38,420 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:38,420 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:38,425 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2024-11-17 08:09:38,425 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:09:38,425 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-11-17 08:09:38,425 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 17 states, 16 states have (on average 1.5) internal successors, (24), 16 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:38,427 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 7 [2024-11-17 08:09:38,428 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:38,428 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:38,428 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2024-11-17 08:09:38,428 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2024-11-17 08:09:38,433 INFO L745 eck$LassoCheckResult]: Stem: 3#ULTIMATE.startENTRYtrue assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 9#ULTIMATE.init_returnLabel#1true assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 13#L367true assume !(main_~length~0#1 < 1); 5#L368-1true call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 15#L369-1true assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 6#L370true [2024-11-17 08:09:38,433 INFO L747 eck$LassoCheckResult]: Loop: 6#L370true assume true; 17#L370-2true assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 16#L372true assume main_#t~mem208#1 > 0;havoc main_#t~mem208#1;call write~int#0(0, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 7#L370-1true main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6#L370true [2024-11-17 08:09:38,441 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:38,441 INFO L85 PathProgramCache]: Analyzing trace with hash 58180764, now seen corresponding path program 1 times [2024-11-17 08:09:38,450 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:38,450 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1378101812] [2024-11-17 08:09:38,451 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:38,451 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:38,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:38,542 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:38,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:38,572 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:38,574 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:38,574 INFO L85 PathProgramCache]: Analyzing trace with hash 1538047, now seen corresponding path program 1 times [2024-11-17 08:09:38,575 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:38,575 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [722888331] [2024-11-17 08:09:38,575 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:38,575 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:38,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:38,587 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:38,596 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:38,601 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:38,603 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:38,606 INFO L85 PathProgramCache]: Analyzing trace with hash 1117091610, now seen corresponding path program 1 times [2024-11-17 08:09:38,606 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:38,606 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1641565413] [2024-11-17 08:09:38,606 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:38,606 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:38,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:38,637 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:38,651 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:38,658 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:38,922 INFO L204 LassoAnalysis]: Preferences: [2024-11-17 08:09:38,922 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-17 08:09:38,923 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-17 08:09:38,923 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-17 08:09:38,923 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-17 08:09:38,923 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:09:38,923 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-17 08:09:38,923 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-17 08:09:38,923 INFO L132 ssoRankerPreferences]: Filename of dumped script: array13_alloca.i_Iteration1_Lasso [2024-11-17 08:09:38,923 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-17 08:09:38,924 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-17 08:09:38,936 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:38,942 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:39,040 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:39,042 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:39,044 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:39,046 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:39,048 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:39,050 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:39,052 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:39,054 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:39,056 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:09:39,234 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-17 08:09:39,237 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-17 08:09:39,238 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:09:39,238 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:39,240 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:09:39,241 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2024-11-17 08:09:39,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-17 08:09:39,254 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:09:39,254 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:09:39,255 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:09:39,255 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:09:39,255 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:09:39,256 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:09:39,256 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:09:39,258 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:09:39,269 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Forceful destruction successful, exit code 0 [2024-11-17 08:09:39,273 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:09:39,273 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:39,275 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:09:39,276 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2024-11-17 08:09:39,277 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:09:39,287 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:09:39,288 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:09:39,288 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:09:39,288 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:09:39,292 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:09:39,292 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:09:39,296 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:09:39,307 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2024-11-17 08:09:39,308 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:09:39,308 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:39,314 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:09:39,315 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2024-11-17 08:09:39,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-17 08:09:39,327 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:09:39,328 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:09:39,328 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:09:39,328 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:09:39,336 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:09:39,336 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:09:39,347 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-17 08:09:39,381 INFO L443 ModelExtractionUtils]: Simplification made 12 calls to the SMT solver. [2024-11-17 08:09:39,382 INFO L444 ModelExtractionUtils]: 3 out of 19 variables were initially zero. Simplification set additionally 12 variables to zero. [2024-11-17 08:09:39,383 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:09:39,386 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:39,406 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:09:39,408 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2024-11-17 08:09:39,413 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-17 08:09:39,430 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-17 08:09:39,430 INFO L474 LassoAnalysis]: Proved termination. [2024-11-17 08:09:39,431 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~arr~0#1.offset, v_rep(select #length ULTIMATE.start_main_~arr~0#1.base)_1, ULTIMATE.start_main_~i~0#1) = -1*ULTIMATE.start_main_~arr~0#1.offset + 1*v_rep(select #length ULTIMATE.start_main_~arr~0#1.base)_1 - 4*ULTIMATE.start_main_~i~0#1 Supporting invariants [] [2024-11-17 08:09:39,448 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Ended with exit code 0 [2024-11-17 08:09:39,479 INFO L156 tatePredicateManager]: 3 out of 3 supporting invariants were superfluous and have been removed [2024-11-17 08:09:39,498 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2024-11-17 08:09:39,498 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2024-11-17 08:09:39,499 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: ~arr~0!offset [2024-11-17 08:09:39,521 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:39,542 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:39,547 INFO L255 TraceCheckSpWp]: Trace formula consists of 26 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-17 08:09:39,548 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:39,570 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:39,571 INFO L255 TraceCheckSpWp]: Trace formula consists of 25 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-17 08:09:39,571 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:39,616 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-17 08:09:39,641 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:39,665 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-17 08:09:39,667 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 17 states, 16 states have (on average 1.5) internal successors, (24), 16 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) Second operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:39,703 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 17 states, 16 states have (on average 1.5) internal successors, (24), 16 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). Second operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 32 states and 43 transitions. Complement of second has 8 states. [2024-11-17 08:09:39,705 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2024-11-17 08:09:39,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:39,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 25 transitions. [2024-11-17 08:09:39,710 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 25 transitions. Stem has 5 letters. Loop has 4 letters. [2024-11-17 08:09:39,710 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:09:39,710 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 25 transitions. Stem has 9 letters. Loop has 4 letters. [2024-11-17 08:09:39,710 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:09:39,710 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 25 transitions. Stem has 5 letters. Loop has 8 letters. [2024-11-17 08:09:39,711 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:09:39,711 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32 states and 43 transitions. [2024-11-17 08:09:39,712 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:39,715 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32 states to 15 states and 20 transitions. [2024-11-17 08:09:39,715 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 10 [2024-11-17 08:09:39,715 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 11 [2024-11-17 08:09:39,716 INFO L73 IsDeterministic]: Start isDeterministic. Operand 15 states and 20 transitions. [2024-11-17 08:09:39,716 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:39,716 INFO L218 hiAutomatonCegarLoop]: Abstraction has 15 states and 20 transitions. [2024-11-17 08:09:39,728 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 15 states and 20 transitions. [2024-11-17 08:09:39,733 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 15 to 15. [2024-11-17 08:09:39,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.3333333333333333) internal successors, (20), 14 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:39,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 20 transitions. [2024-11-17 08:09:39,734 INFO L240 hiAutomatonCegarLoop]: Abstraction has 15 states and 20 transitions. [2024-11-17 08:09:39,735 INFO L425 stractBuchiCegarLoop]: Abstraction has 15 states and 20 transitions. [2024-11-17 08:09:39,735 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-11-17 08:09:39,735 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 15 states and 20 transitions. [2024-11-17 08:09:39,735 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:39,735 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:39,735 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:39,736 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:39,736 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:39,736 INFO L745 eck$LassoCheckResult]: Stem: 115#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 116#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 126#L367 assume !(main_~length~0#1 < 1); 117#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 118#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 119#L370 assume true; 121#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 124#L376 main_~j~0#1 := 0; 125#L377 [2024-11-17 08:09:39,736 INFO L747 eck$LassoCheckResult]: Loop: 125#L377 assume true; 128#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 127#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 125#L377 [2024-11-17 08:09:39,737 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:39,737 INFO L85 PathProgramCache]: Analyzing trace with hash -1903627501, now seen corresponding path program 1 times [2024-11-17 08:09:39,737 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:39,737 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1029953801] [2024-11-17 08:09:39,737 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:39,737 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:39,748 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:39,804 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:39,804 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:39,804 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1029953801] [2024-11-17 08:09:39,805 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1029953801] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-17 08:09:39,805 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-17 08:09:39,805 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-17 08:09:39,806 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [984025606] [2024-11-17 08:09:39,806 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-17 08:09:39,808 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:09:39,808 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:39,808 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 1 times [2024-11-17 08:09:39,808 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:39,808 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [472565551] [2024-11-17 08:09:39,808 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:39,808 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:39,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:39,813 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:39,816 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:39,817 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:39,859 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:39,861 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-17 08:09:39,861 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2024-11-17 08:09:39,862 INFO L87 Difference]: Start difference. First operand 15 states and 20 transitions. cyclomatic complexity: 7 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-17 08:09:39,881 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:39,881 INFO L93 Difference]: Finished difference Result 19 states and 24 transitions. [2024-11-17 08:09:39,881 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 19 states and 24 transitions. [2024-11-17 08:09:39,882 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:39,882 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 19 states to 18 states and 23 transitions. [2024-11-17 08:09:39,882 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 11 [2024-11-17 08:09:39,882 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 11 [2024-11-17 08:09:39,882 INFO L73 IsDeterministic]: Start isDeterministic. Operand 18 states and 23 transitions. [2024-11-17 08:09:39,883 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:39,883 INFO L218 hiAutomatonCegarLoop]: Abstraction has 18 states and 23 transitions. [2024-11-17 08:09:39,883 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states and 23 transitions. [2024-11-17 08:09:39,883 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 15. [2024-11-17 08:09:39,884 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 14 states have internal predecessors, (19), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:39,884 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 19 transitions. [2024-11-17 08:09:39,884 INFO L240 hiAutomatonCegarLoop]: Abstraction has 15 states and 19 transitions. [2024-11-17 08:09:39,884 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-17 08:09:39,885 INFO L425 stractBuchiCegarLoop]: Abstraction has 15 states and 19 transitions. [2024-11-17 08:09:39,885 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-11-17 08:09:39,885 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 15 states and 19 transitions. [2024-11-17 08:09:39,885 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:39,885 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:39,886 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:39,886 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:39,886 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:39,886 INFO L745 eck$LassoCheckResult]: Stem: 156#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 157#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 167#L367 assume !(main_~length~0#1 < 1); 158#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 159#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 160#L370 assume true; 161#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 170#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 164#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 162#L370 assume true; 163#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 165#L376 main_~j~0#1 := 0; 166#L377 [2024-11-17 08:09:39,886 INFO L747 eck$LassoCheckResult]: Loop: 166#L377 assume true; 169#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 168#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 166#L377 [2024-11-17 08:09:39,887 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:39,887 INFO L85 PathProgramCache]: Analyzing trace with hash 1870487382, now seen corresponding path program 1 times [2024-11-17 08:09:39,887 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:39,887 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1820922086] [2024-11-17 08:09:39,887 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:39,887 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:39,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:39,900 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:39,913 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:39,916 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:39,916 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:39,916 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 2 times [2024-11-17 08:09:39,917 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:39,917 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2095278270] [2024-11-17 08:09:39,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:39,917 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:39,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:39,921 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:39,923 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:39,924 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:39,924 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:39,924 INFO L85 PathProgramCache]: Analyzing trace with hash 783908751, now seen corresponding path program 1 times [2024-11-17 08:09:39,924 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:39,924 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [575012708] [2024-11-17 08:09:39,924 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:39,925 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:39,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:40,157 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:40,158 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:40,158 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [575012708] [2024-11-17 08:09:40,158 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [575012708] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:40,161 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1555305266] [2024-11-17 08:09:40,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:40,161 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:40,162 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:40,163 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:40,164 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2024-11-17 08:09:40,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:40,210 INFO L255 TraceCheckSpWp]: Trace formula consists of 57 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-17 08:09:40,212 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:40,244 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-17 08:09:40,289 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-17 08:09:40,297 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:40,297 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:40,369 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 14 treesize of output 12 [2024-11-17 08:09:40,373 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 18 treesize of output 16 [2024-11-17 08:09:40,378 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:40,379 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1555305266] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:40,379 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:40,379 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 6, 6] total 15 [2024-11-17 08:09:40,379 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [316105467] [2024-11-17 08:09:40,379 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:40,426 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:40,426 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2024-11-17 08:09:40,427 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=183, Unknown=0, NotChecked=0, Total=240 [2024-11-17 08:09:40,427 INFO L87 Difference]: Start difference. First operand 15 states and 19 transitions. cyclomatic complexity: 6 Second operand has 16 states, 15 states have (on average 2.1333333333333333) internal successors, (32), 16 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:40,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:40,519 INFO L93 Difference]: Finished difference Result 30 states and 38 transitions. [2024-11-17 08:09:40,519 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 30 states and 38 transitions. [2024-11-17 08:09:40,519 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-17 08:09:40,520 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 30 states to 30 states and 38 transitions. [2024-11-17 08:09:40,520 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 19 [2024-11-17 08:09:40,520 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 19 [2024-11-17 08:09:40,520 INFO L73 IsDeterministic]: Start isDeterministic. Operand 30 states and 38 transitions. [2024-11-17 08:09:40,520 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:40,520 INFO L218 hiAutomatonCegarLoop]: Abstraction has 30 states and 38 transitions. [2024-11-17 08:09:40,520 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states and 38 transitions. [2024-11-17 08:09:40,521 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 26. [2024-11-17 08:09:40,522 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 25 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:40,522 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 33 transitions. [2024-11-17 08:09:40,524 INFO L240 hiAutomatonCegarLoop]: Abstraction has 26 states and 33 transitions. [2024-11-17 08:09:40,524 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-11-17 08:09:40,524 INFO L425 stractBuchiCegarLoop]: Abstraction has 26 states and 33 transitions. [2024-11-17 08:09:40,524 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-11-17 08:09:40,525 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 26 states and 33 transitions. [2024-11-17 08:09:40,525 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:40,525 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:40,525 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:40,526 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:40,526 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:40,527 INFO L745 eck$LassoCheckResult]: Stem: 310#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 311#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 323#L367 assume !(main_~length~0#1 < 1); 312#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 313#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 314#L370 assume true; 315#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 327#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 319#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 320#L370 assume true; 328#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 329#L376 main_~j~0#1 := 0; 333#L377 assume true; 332#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 324#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 322#L377 [2024-11-17 08:09:40,527 INFO L747 eck$LassoCheckResult]: Loop: 322#L377 assume true; 325#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 326#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 322#L377 [2024-11-17 08:09:40,527 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:40,527 INFO L85 PathProgramCache]: Analyzing trace with hash 783908752, now seen corresponding path program 1 times [2024-11-17 08:09:40,527 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:40,528 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [357340737] [2024-11-17 08:09:40,528 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:40,528 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:40,542 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:40,542 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:40,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:40,558 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:40,559 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:40,559 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 3 times [2024-11-17 08:09:40,559 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:40,562 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1984999391] [2024-11-17 08:09:40,562 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:40,562 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:40,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:40,565 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:40,570 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:40,571 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:40,572 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:40,572 INFO L85 PathProgramCache]: Analyzing trace with hash 1688452373, now seen corresponding path program 1 times [2024-11-17 08:09:40,572 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:40,572 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1726653334] [2024-11-17 08:09:40,572 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:40,572 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:40,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:40,653 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:40,653 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:40,654 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1726653334] [2024-11-17 08:09:40,654 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1726653334] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:40,654 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1563671142] [2024-11-17 08:09:40,654 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:40,654 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:40,654 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:40,655 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:40,657 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2024-11-17 08:09:40,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:40,698 INFO L255 TraceCheckSpWp]: Trace formula consists of 69 conjuncts, 6 conjuncts are in the unsatisfiable core [2024-11-17 08:09:40,699 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:40,745 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 3 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:40,746 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:40,782 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 3 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:40,782 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1563671142] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:40,782 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:40,782 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 11 [2024-11-17 08:09:40,782 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1247928712] [2024-11-17 08:09:40,782 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:40,817 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:40,818 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2024-11-17 08:09:40,818 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=78, Unknown=0, NotChecked=0, Total=110 [2024-11-17 08:09:40,818 INFO L87 Difference]: Start difference. First operand 26 states and 33 transitions. cyclomatic complexity: 10 Second operand has 11 states, 11 states have (on average 3.0) internal successors, (33), 11 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:40,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:40,892 INFO L93 Difference]: Finished difference Result 61 states and 75 transitions. [2024-11-17 08:09:40,893 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 61 states and 75 transitions. [2024-11-17 08:09:40,894 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-17 08:09:40,894 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 61 states to 53 states and 65 transitions. [2024-11-17 08:09:40,894 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 26 [2024-11-17 08:09:40,894 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 26 [2024-11-17 08:09:40,894 INFO L73 IsDeterministic]: Start isDeterministic. Operand 53 states and 65 transitions. [2024-11-17 08:09:40,895 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:40,895 INFO L218 hiAutomatonCegarLoop]: Abstraction has 53 states and 65 transitions. [2024-11-17 08:09:40,895 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states and 65 transitions. [2024-11-17 08:09:40,897 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 46. [2024-11-17 08:09:40,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 46 states have (on average 1.2391304347826086) internal successors, (57), 45 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:40,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 57 transitions. [2024-11-17 08:09:40,898 INFO L240 hiAutomatonCegarLoop]: Abstraction has 46 states and 57 transitions. [2024-11-17 08:09:40,898 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-11-17 08:09:40,898 INFO L425 stractBuchiCegarLoop]: Abstraction has 46 states and 57 transitions. [2024-11-17 08:09:40,899 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-11-17 08:09:40,899 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 46 states and 57 transitions. [2024-11-17 08:09:40,899 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-17 08:09:40,899 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:40,899 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:40,900 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:40,900 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:40,900 INFO L745 eck$LassoCheckResult]: Stem: 521#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 522#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 533#L367 assume main_~length~0#1 < 1;main_~length~0#1 := 1; 523#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 524#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 525#L370 assume true; 526#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 540#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 529#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 530#L370 assume true; 561#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 559#L372 assume main_#t~mem208#1 > 0;havoc main_#t~mem208#1;call write~int#0(0, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 544#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 542#L370 assume true; 541#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 531#L376 main_~j~0#1 := 0; 532#L377 [2024-11-17 08:09:40,900 INFO L747 eck$LassoCheckResult]: Loop: 532#L377 assume true; 536#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 545#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 532#L377 [2024-11-17 08:09:40,900 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:40,900 INFO L85 PathProgramCache]: Analyzing trace with hash -903868167, now seen corresponding path program 1 times [2024-11-17 08:09:40,900 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:40,900 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1039889200] [2024-11-17 08:09:40,901 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:40,901 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:40,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:40,963 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:40,964 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:40,964 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1039889200] [2024-11-17 08:09:40,964 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1039889200] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:40,964 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [9763508] [2024-11-17 08:09:40,964 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:40,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:40,964 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:40,966 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:40,967 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2024-11-17 08:09:41,007 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:41,008 INFO L255 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-17 08:09:41,008 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:41,042 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:41,042 INFO L307 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-11-17 08:09:41,046 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [9763508] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-17 08:09:41,046 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-11-17 08:09:41,046 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [5] total 7 [2024-11-17 08:09:41,046 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1552067429] [2024-11-17 08:09:41,047 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-17 08:09:41,047 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-17 08:09:41,047 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:41,047 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 4 times [2024-11-17 08:09:41,047 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:41,047 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1454920456] [2024-11-17 08:09:41,047 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:41,047 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:41,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:41,050 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:41,052 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:41,053 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:41,093 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:41,093 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-17 08:09:41,093 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2024-11-17 08:09:41,093 INFO L87 Difference]: Start difference. First operand 46 states and 57 transitions. cyclomatic complexity: 17 Second operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:41,106 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:41,106 INFO L93 Difference]: Finished difference Result 36 states and 43 transitions. [2024-11-17 08:09:41,106 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 36 states and 43 transitions. [2024-11-17 08:09:41,106 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:41,107 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 36 states to 28 states and 34 transitions. [2024-11-17 08:09:41,107 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 16 [2024-11-17 08:09:41,107 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 16 [2024-11-17 08:09:41,107 INFO L73 IsDeterministic]: Start isDeterministic. Operand 28 states and 34 transitions. [2024-11-17 08:09:41,107 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:41,107 INFO L218 hiAutomatonCegarLoop]: Abstraction has 28 states and 34 transitions. [2024-11-17 08:09:41,107 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states and 34 transitions. [2024-11-17 08:09:41,108 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2024-11-17 08:09:41,108 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 27 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:41,109 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 34 transitions. [2024-11-17 08:09:41,109 INFO L240 hiAutomatonCegarLoop]: Abstraction has 28 states and 34 transitions. [2024-11-17 08:09:41,109 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-17 08:09:41,110 INFO L425 stractBuchiCegarLoop]: Abstraction has 28 states and 34 transitions. [2024-11-17 08:09:41,110 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-11-17 08:09:41,110 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 28 states and 34 transitions. [2024-11-17 08:09:41,110 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:41,110 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:41,110 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:41,111 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:41,111 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:41,111 INFO L745 eck$LassoCheckResult]: Stem: 658#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 659#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 669#L367 assume !(main_~length~0#1 < 1); 660#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 661#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 662#L370 assume true; 663#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 682#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 666#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 664#L370 assume true; 665#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 685#L372 assume main_#t~mem208#1 > 0;havoc main_#t~mem208#1;call write~int#0(0, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 674#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 679#L370 assume true; 683#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 681#L376 main_~j~0#1 := 0; 671#L377 [2024-11-17 08:09:41,111 INFO L747 eck$LassoCheckResult]: Loop: 671#L377 assume true; 680#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 678#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 671#L377 [2024-11-17 08:09:41,111 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:41,111 INFO L85 PathProgramCache]: Analyzing trace with hash -1409426792, now seen corresponding path program 1 times [2024-11-17 08:09:41,111 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:41,111 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1772320691] [2024-11-17 08:09:41,111 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:41,111 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:41,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:41,120 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:41,124 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:41,126 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:41,126 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:41,126 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 5 times [2024-11-17 08:09:41,126 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:41,126 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1519079595] [2024-11-17 08:09:41,126 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:41,126 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:41,128 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:41,129 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:41,130 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:41,130 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:41,131 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:41,131 INFO L85 PathProgramCache]: Analyzing trace with hash -633264883, now seen corresponding path program 1 times [2024-11-17 08:09:41,131 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:41,131 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1265589344] [2024-11-17 08:09:41,131 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:41,131 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:41,142 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:41,367 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:41,367 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:41,368 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1265589344] [2024-11-17 08:09:41,368 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1265589344] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:41,368 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [655520037] [2024-11-17 08:09:41,368 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:41,368 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:41,368 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:41,370 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:41,371 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2024-11-17 08:09:41,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:41,412 INFO L255 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 15 conjuncts are in the unsatisfiable core [2024-11-17 08:09:41,413 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:41,426 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-17 08:09:41,467 INFO L349 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2024-11-17 08:09:41,467 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 1 case distinctions, treesize of input 31 treesize of output 11 [2024-11-17 08:09:41,482 INFO L349 Elim1Store]: treesize reduction 25, result has 21.9 percent of original size [2024-11-17 08:09:41,482 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 1 case distinctions, treesize of input 31 treesize of output 11 [2024-11-17 08:09:41,511 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-17 08:09:41,519 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:41,519 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:41,645 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 19 [2024-11-17 08:09:41,648 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 98 treesize of output 94 [2024-11-17 08:09:41,661 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:41,665 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [655520037] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:41,665 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:41,665 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 20 [2024-11-17 08:09:41,666 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1500360139] [2024-11-17 08:09:41,666 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:41,740 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:41,741 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2024-11-17 08:09:41,741 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=81, Invalid=339, Unknown=0, NotChecked=0, Total=420 [2024-11-17 08:09:41,741 INFO L87 Difference]: Start difference. First operand 28 states and 34 transitions. cyclomatic complexity: 9 Second operand has 21 states, 20 states have (on average 2.2) internal successors, (44), 21 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-17 08:09:41,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:41,922 INFO L93 Difference]: Finished difference Result 31 states and 37 transitions. [2024-11-17 08:09:41,922 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 31 states and 37 transitions. [2024-11-17 08:09:41,923 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:41,923 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 31 states to 31 states and 37 transitions. [2024-11-17 08:09:41,923 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 19 [2024-11-17 08:09:41,923 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 19 [2024-11-17 08:09:41,923 INFO L73 IsDeterministic]: Start isDeterministic. Operand 31 states and 37 transitions. [2024-11-17 08:09:41,923 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:41,923 INFO L218 hiAutomatonCegarLoop]: Abstraction has 31 states and 37 transitions. [2024-11-17 08:09:41,924 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states and 37 transitions. [2024-11-17 08:09:41,926 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 22. [2024-11-17 08:09:41,926 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 21 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:41,926 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 26 transitions. [2024-11-17 08:09:41,926 INFO L240 hiAutomatonCegarLoop]: Abstraction has 22 states and 26 transitions. [2024-11-17 08:09:41,932 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-11-17 08:09:41,932 INFO L425 stractBuchiCegarLoop]: Abstraction has 22 states and 26 transitions. [2024-11-17 08:09:41,932 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-11-17 08:09:41,932 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 22 states and 26 transitions. [2024-11-17 08:09:41,933 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:41,933 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:41,933 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:41,933 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:41,933 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:41,933 INFO L745 eck$LassoCheckResult]: Stem: 855#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 856#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 866#L367 assume !(main_~length~0#1 < 1); 857#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 858#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 859#L370 assume true; 860#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 874#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 863#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 861#L370 assume true; 862#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 870#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 871#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 873#L370 assume true; 872#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 864#L376 main_~j~0#1 := 0; 865#L377 assume true; 869#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 867#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 868#L377 [2024-11-17 08:09:41,933 INFO L747 eck$LassoCheckResult]: Loop: 868#L377 assume true; 876#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 875#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 868#L377 [2024-11-17 08:09:41,934 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:41,934 INFO L85 PathProgramCache]: Analyzing trace with hash 1109545453, now seen corresponding path program 2 times [2024-11-17 08:09:41,934 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:41,934 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1624636200] [2024-11-17 08:09:41,934 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:41,934 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:41,945 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:41,946 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:41,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:41,951 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:41,952 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:41,952 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 6 times [2024-11-17 08:09:41,952 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:41,952 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2054858014] [2024-11-17 08:09:41,952 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:41,952 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:41,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:41,954 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:41,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:41,956 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:41,956 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:41,956 INFO L85 PathProgramCache]: Analyzing trace with hash 400290200, now seen corresponding path program 2 times [2024-11-17 08:09:41,956 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:41,956 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1396475966] [2024-11-17 08:09:41,956 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:41,956 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:41,963 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:42,135 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:42,135 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:42,135 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1396475966] [2024-11-17 08:09:42,135 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1396475966] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:42,136 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [730751843] [2024-11-17 08:09:42,136 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-17 08:09:42,136 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:42,136 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:42,140 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:42,142 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2024-11-17 08:09:42,190 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-17 08:09:42,191 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:42,191 INFO L255 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-11-17 08:09:42,193 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:42,268 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-17 08:09:42,400 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-17 08:09:42,402 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:42,402 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:42,460 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 16 treesize of output 14 [2024-11-17 08:09:42,463 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 20 treesize of output 16 [2024-11-17 08:09:42,470 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 0 proven. 11 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:42,470 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [730751843] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:42,471 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:42,471 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 8] total 18 [2024-11-17 08:09:42,471 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [859644093] [2024-11-17 08:09:42,471 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:42,507 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:42,508 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-11-17 08:09:42,508 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=64, Invalid=278, Unknown=0, NotChecked=0, Total=342 [2024-11-17 08:09:42,508 INFO L87 Difference]: Start difference. First operand 22 states and 26 transitions. cyclomatic complexity: 6 Second operand has 19 states, 18 states have (on average 2.611111111111111) internal successors, (47), 19 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-17 08:09:42,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:42,636 INFO L93 Difference]: Finished difference Result 40 states and 48 transitions. [2024-11-17 08:09:42,636 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 40 states and 48 transitions. [2024-11-17 08:09:42,636 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-17 08:09:42,637 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 40 states to 40 states and 48 transitions. [2024-11-17 08:09:42,637 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25 [2024-11-17 08:09:42,637 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2024-11-17 08:09:42,637 INFO L73 IsDeterministic]: Start isDeterministic. Operand 40 states and 48 transitions. [2024-11-17 08:09:42,637 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:42,637 INFO L218 hiAutomatonCegarLoop]: Abstraction has 40 states and 48 transitions. [2024-11-17 08:09:42,637 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states and 48 transitions. [2024-11-17 08:09:42,638 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 33. [2024-11-17 08:09:42,639 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 33 states have (on average 1.2121212121212122) internal successors, (40), 32 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:42,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 40 transitions. [2024-11-17 08:09:42,639 INFO L240 hiAutomatonCegarLoop]: Abstraction has 33 states and 40 transitions. [2024-11-17 08:09:42,642 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2024-11-17 08:09:42,643 INFO L425 stractBuchiCegarLoop]: Abstraction has 33 states and 40 transitions. [2024-11-17 08:09:42,643 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-11-17 08:09:42,647 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 33 states and 40 transitions. [2024-11-17 08:09:42,647 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:42,648 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:42,648 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:42,648 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:42,648 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:42,648 INFO L745 eck$LassoCheckResult]: Stem: 1075#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1076#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 1087#L367 assume !(main_~length~0#1 < 1); 1077#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 1078#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 1079#L370 assume true; 1080#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1100#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 1099#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1081#L370 assume true; 1082#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1091#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 1083#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1084#L370 assume true; 1092#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 1093#L376 main_~j~0#1 := 0; 1105#L377 assume true; 1104#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1088#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 1086#L377 assume true; 1089#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1090#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 1102#L377 [2024-11-17 08:09:42,648 INFO L747 eck$LassoCheckResult]: Loop: 1102#L377 assume true; 1103#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1101#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 1102#L377 [2024-11-17 08:09:42,648 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:42,648 INFO L85 PathProgramCache]: Analyzing trace with hash 400290201, now seen corresponding path program 3 times [2024-11-17 08:09:42,649 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:42,649 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2038278616] [2024-11-17 08:09:42,649 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:42,649 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:42,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:42,667 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:42,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:42,678 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:42,679 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:42,679 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 7 times [2024-11-17 08:09:42,679 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:42,679 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1208956577] [2024-11-17 08:09:42,683 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:42,683 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:42,685 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:42,685 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:42,686 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:42,687 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:42,688 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:42,688 INFO L85 PathProgramCache]: Analyzing trace with hash -2078793108, now seen corresponding path program 3 times [2024-11-17 08:09:42,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:42,688 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1247366731] [2024-11-17 08:09:42,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:42,688 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:42,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:42,772 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 4 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:42,773 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:42,773 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1247366731] [2024-11-17 08:09:42,773 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1247366731] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:42,773 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [551404326] [2024-11-17 08:09:42,774 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-17 08:09:42,774 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:42,774 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:42,778 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:42,779 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2024-11-17 08:09:42,827 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2024-11-17 08:09:42,827 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:42,827 INFO L255 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 8 conjuncts are in the unsatisfiable core [2024-11-17 08:09:42,828 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:42,896 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 9 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:42,897 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:42,941 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 9 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:42,941 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [551404326] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:42,941 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:42,941 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 9] total 14 [2024-11-17 08:09:42,941 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [227244060] [2024-11-17 08:09:42,942 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:42,978 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:42,979 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-11-17 08:09:42,979 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=133, Unknown=0, NotChecked=0, Total=182 [2024-11-17 08:09:42,979 INFO L87 Difference]: Start difference. First operand 33 states and 40 transitions. cyclomatic complexity: 10 Second operand has 14 states, 14 states have (on average 3.0714285714285716) internal successors, (43), 14 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:43,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:43,039 INFO L93 Difference]: Finished difference Result 49 states and 57 transitions. [2024-11-17 08:09:43,039 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 49 states and 57 transitions. [2024-11-17 08:09:43,040 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:43,040 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 49 states to 39 states and 47 transitions. [2024-11-17 08:09:43,040 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 19 [2024-11-17 08:09:43,040 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 19 [2024-11-17 08:09:43,040 INFO L73 IsDeterministic]: Start isDeterministic. Operand 39 states and 47 transitions. [2024-11-17 08:09:43,040 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:43,040 INFO L218 hiAutomatonCegarLoop]: Abstraction has 39 states and 47 transitions. [2024-11-17 08:09:43,040 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states and 47 transitions. [2024-11-17 08:09:43,042 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 35. [2024-11-17 08:09:43,042 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 35 states have (on average 1.2) internal successors, (42), 34 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:43,042 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 42 transitions. [2024-11-17 08:09:43,042 INFO L240 hiAutomatonCegarLoop]: Abstraction has 35 states and 42 transitions. [2024-11-17 08:09:43,042 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-11-17 08:09:43,043 INFO L425 stractBuchiCegarLoop]: Abstraction has 35 states and 42 transitions. [2024-11-17 08:09:43,043 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-11-17 08:09:43,043 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 35 states and 42 transitions. [2024-11-17 08:09:43,043 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:43,043 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:43,043 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:43,043 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:43,044 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:43,044 INFO L745 eck$LassoCheckResult]: Stem: 1320#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1321#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 1332#L367 assume !(main_~length~0#1 < 1); 1322#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 1323#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 1324#L370 assume true; 1325#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1347#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 1328#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1329#L370 assume true; 1352#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1354#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 1353#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1326#L370 assume true; 1327#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1339#L372 assume main_#t~mem208#1 > 0;havoc main_#t~mem208#1;call write~int#0(0, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1337#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1350#L370 assume true; 1349#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 1348#L376 main_~j~0#1 := 0; 1334#L377 assume true; 1346#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1345#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 1343#L377 [2024-11-17 08:09:43,044 INFO L747 eck$LassoCheckResult]: Loop: 1343#L377 assume true; 1344#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1342#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 1343#L377 [2024-11-17 08:09:43,044 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:43,044 INFO L85 PathProgramCache]: Analyzing trace with hash -1911586581, now seen corresponding path program 1 times [2024-11-17 08:09:43,044 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:43,044 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [656285758] [2024-11-17 08:09:43,044 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:43,044 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:43,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:43,057 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:43,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:43,063 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:43,064 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:43,064 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 8 times [2024-11-17 08:09:43,064 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:43,064 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1575932018] [2024-11-17 08:09:43,064 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:43,064 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:43,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:43,066 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:43,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:43,068 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:43,068 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:43,068 INFO L85 PathProgramCache]: Analyzing trace with hash -1104447014, now seen corresponding path program 1 times [2024-11-17 08:09:43,068 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:43,068 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [391331041] [2024-11-17 08:09:43,068 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:43,068 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:43,075 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:43,266 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 0 proven. 21 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:43,266 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:43,266 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [391331041] [2024-11-17 08:09:43,266 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [391331041] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:43,266 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [586750523] [2024-11-17 08:09:43,266 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:43,266 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:43,267 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:43,268 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:43,269 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2024-11-17 08:09:43,326 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:43,327 INFO L255 TraceCheckSpWp]: Trace formula consists of 107 conjuncts, 19 conjuncts are in the unsatisfiable core [2024-11-17 08:09:43,329 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:43,344 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 19 treesize of output 1 [2024-11-17 08:09:43,394 INFO L349 Elim1Store]: treesize reduction 27, result has 25.0 percent of original size [2024-11-17 08:09:43,394 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 1 case distinctions, treesize of input 33 treesize of output 13 [2024-11-17 08:09:43,411 INFO L349 Elim1Store]: treesize reduction 27, result has 25.0 percent of original size [2024-11-17 08:09:43,411 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 1 case distinctions, treesize of input 33 treesize of output 13 [2024-11-17 08:09:43,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 19 treesize of output 7 [2024-11-17 08:09:43,452 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 0 proven. 21 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:43,452 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:43,571 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 20 treesize of output 18 [2024-11-17 08:09:43,573 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 20 [2024-11-17 08:09:43,586 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 0 proven. 21 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:43,586 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [586750523] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:43,586 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:43,586 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10, 10] total 16 [2024-11-17 08:09:43,586 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [788525025] [2024-11-17 08:09:43,587 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:43,625 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:43,625 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2024-11-17 08:09:43,626 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2024-11-17 08:09:43,626 INFO L87 Difference]: Start difference. First operand 35 states and 42 transitions. cyclomatic complexity: 10 Second operand has 17 states, 16 states have (on average 2.625) internal successors, (42), 17 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:43,745 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:43,746 INFO L93 Difference]: Finished difference Result 41 states and 48 transitions. [2024-11-17 08:09:43,746 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 41 states and 48 transitions. [2024-11-17 08:09:43,746 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:43,747 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 41 states to 41 states and 48 transitions. [2024-11-17 08:09:43,747 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25 [2024-11-17 08:09:43,747 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2024-11-17 08:09:43,748 INFO L73 IsDeterministic]: Start isDeterministic. Operand 41 states and 48 transitions. [2024-11-17 08:09:43,748 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:43,748 INFO L218 hiAutomatonCegarLoop]: Abstraction has 41 states and 48 transitions. [2024-11-17 08:09:43,748 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states and 48 transitions. [2024-11-17 08:09:43,749 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 29. [2024-11-17 08:09:43,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.1724137931034482) internal successors, (34), 28 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:43,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 34 transitions. [2024-11-17 08:09:43,750 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 34 transitions. [2024-11-17 08:09:43,753 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2024-11-17 08:09:43,753 INFO L425 stractBuchiCegarLoop]: Abstraction has 29 states and 34 transitions. [2024-11-17 08:09:43,753 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-11-17 08:09:43,753 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 29 states and 34 transitions. [2024-11-17 08:09:43,753 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:43,753 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:43,753 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:43,754 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:43,754 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:43,754 INFO L745 eck$LassoCheckResult]: Stem: 1570#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1571#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 1582#L367 assume !(main_~length~0#1 < 1); 1572#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 1573#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 1574#L370 assume true; 1575#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1593#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 1592#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1576#L370 assume true; 1577#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1591#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 1578#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1579#L370 assume true; 1589#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1586#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 1587#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1590#L370 assume true; 1588#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 1580#L376 main_~j~0#1 := 0; 1581#L377 assume true; 1585#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1583#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 1584#L377 assume true; 1598#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1597#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 1595#L377 [2024-11-17 08:09:43,754 INFO L747 eck$LassoCheckResult]: Loop: 1595#L377 assume true; 1596#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1594#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 1595#L377 [2024-11-17 08:09:43,754 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:43,754 INFO L85 PathProgramCache]: Analyzing trace with hash 1393568924, now seen corresponding path program 4 times [2024-11-17 08:09:43,755 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:43,755 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1630146562] [2024-11-17 08:09:43,755 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:43,756 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:43,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:43,770 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:43,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:43,780 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:43,780 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:43,780 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 9 times [2024-11-17 08:09:43,780 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:43,780 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1610453575] [2024-11-17 08:09:43,780 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:43,780 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:43,784 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:43,784 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:43,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:43,790 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:43,790 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:43,790 INFO L85 PathProgramCache]: Analyzing trace with hash 657941641, now seen corresponding path program 4 times [2024-11-17 08:09:43,790 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:43,790 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2115331205] [2024-11-17 08:09:43,790 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:43,790 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:43,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:43,993 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 0 proven. 27 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:43,994 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:43,994 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2115331205] [2024-11-17 08:09:43,994 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2115331205] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:43,994 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2017885849] [2024-11-17 08:09:43,994 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-17 08:09:43,994 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:43,994 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:43,996 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:44,000 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2024-11-17 08:09:44,050 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-17 08:09:44,050 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:44,051 INFO L255 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-11-17 08:09:44,052 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:44,111 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 19 treesize of output 1 [2024-11-17 08:09:44,254 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 7 [2024-11-17 08:09:44,255 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 0 proven. 27 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:44,255 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:44,330 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 16 treesize of output 14 [2024-11-17 08:09:44,332 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 20 treesize of output 16 [2024-11-17 08:09:44,345 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 0 proven. 27 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:44,345 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2017885849] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:44,345 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:44,345 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 16 [2024-11-17 08:09:44,346 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [61917468] [2024-11-17 08:09:44,346 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:44,380 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:44,381 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2024-11-17 08:09:44,381 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2024-11-17 08:09:44,381 INFO L87 Difference]: Start difference. First operand 29 states and 34 transitions. cyclomatic complexity: 7 Second operand has 17 states, 16 states have (on average 2.75) internal successors, (44), 17 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-17 08:09:44,527 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:44,527 INFO L93 Difference]: Finished difference Result 50 states and 59 transitions. [2024-11-17 08:09:44,527 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 50 states and 59 transitions. [2024-11-17 08:09:44,527 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-17 08:09:44,528 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 50 states to 50 states and 59 transitions. [2024-11-17 08:09:44,528 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 31 [2024-11-17 08:09:44,528 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 31 [2024-11-17 08:09:44,528 INFO L73 IsDeterministic]: Start isDeterministic. Operand 50 states and 59 transitions. [2024-11-17 08:09:44,528 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:44,528 INFO L218 hiAutomatonCegarLoop]: Abstraction has 50 states and 59 transitions. [2024-11-17 08:09:44,528 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states and 59 transitions. [2024-11-17 08:09:44,530 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 40. [2024-11-17 08:09:44,530 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 40 states have (on average 1.2) internal successors, (48), 39 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:44,531 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 48 transitions. [2024-11-17 08:09:44,531 INFO L240 hiAutomatonCegarLoop]: Abstraction has 40 states and 48 transitions. [2024-11-17 08:09:44,531 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2024-11-17 08:09:44,532 INFO L425 stractBuchiCegarLoop]: Abstraction has 40 states and 48 transitions. [2024-11-17 08:09:44,532 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-11-17 08:09:44,532 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 40 states and 48 transitions. [2024-11-17 08:09:44,532 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:44,532 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:44,532 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:44,533 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:44,533 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:44,533 INFO L745 eck$LassoCheckResult]: Stem: 1841#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 1842#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 1853#L367 assume !(main_~length~0#1 < 1); 1843#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 1844#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 1845#L370 assume true; 1846#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1869#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 1865#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1866#L370 assume true; 1870#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1867#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 1868#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1847#L370 assume true; 1848#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 1857#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 1849#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 1850#L370 assume true; 1858#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 1859#L376 main_~j~0#1 := 0; 1878#L377 assume true; 1877#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1854#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 1852#L377 assume true; 1855#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1856#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 1876#L377 assume true; 1875#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1874#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 1872#L377 [2024-11-17 08:09:44,533 INFO L747 eck$LassoCheckResult]: Loop: 1872#L377 assume true; 1873#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 1871#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 1872#L377 [2024-11-17 08:09:44,534 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:44,534 INFO L85 PathProgramCache]: Analyzing trace with hash 657941642, now seen corresponding path program 5 times [2024-11-17 08:09:44,534 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:44,534 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2058315712] [2024-11-17 08:09:44,534 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:44,534 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:44,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:44,544 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:44,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:44,551 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:44,551 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:44,551 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 10 times [2024-11-17 08:09:44,551 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:44,552 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [640196211] [2024-11-17 08:09:44,552 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:44,552 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:44,554 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:44,554 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:44,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:44,555 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:44,556 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:44,556 INFO L85 PathProgramCache]: Analyzing trace with hash -1491272229, now seen corresponding path program 5 times [2024-11-17 08:09:44,556 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:44,556 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [820420055] [2024-11-17 08:09:44,556 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:44,556 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:44,563 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:44,647 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 10 proven. 26 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:44,648 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:44,648 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [820420055] [2024-11-17 08:09:44,648 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [820420055] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:44,648 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [880379877] [2024-11-17 08:09:44,648 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-17 08:09:44,648 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:44,648 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:44,649 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:44,650 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2024-11-17 08:09:44,706 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2024-11-17 08:09:44,707 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:44,707 INFO L255 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-17 08:09:44,708 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:44,808 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 18 proven. 18 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:44,809 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:44,900 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 12 proven. 24 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:44,900 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [880379877] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:44,900 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:44,900 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11, 11] total 17 [2024-11-17 08:09:44,900 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [177592501] [2024-11-17 08:09:44,900 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:44,948 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:44,949 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2024-11-17 08:09:44,949 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=202, Unknown=0, NotChecked=0, Total=272 [2024-11-17 08:09:44,949 INFO L87 Difference]: Start difference. First operand 40 states and 48 transitions. cyclomatic complexity: 11 Second operand has 17 states, 17 states have (on average 3.0) internal successors, (51), 17 states have internal predecessors, (51), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:45,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:45,041 INFO L93 Difference]: Finished difference Result 59 states and 68 transitions. [2024-11-17 08:09:45,042 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 59 states and 68 transitions. [2024-11-17 08:09:45,042 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:45,043 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 59 states to 46 states and 55 transitions. [2024-11-17 08:09:45,043 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2024-11-17 08:09:45,043 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22 [2024-11-17 08:09:45,043 INFO L73 IsDeterministic]: Start isDeterministic. Operand 46 states and 55 transitions. [2024-11-17 08:09:45,044 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:45,044 INFO L218 hiAutomatonCegarLoop]: Abstraction has 46 states and 55 transitions. [2024-11-17 08:09:45,044 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states and 55 transitions. [2024-11-17 08:09:45,047 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 42. [2024-11-17 08:09:45,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 42 states have (on average 1.1904761904761905) internal successors, (50), 41 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:45,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 50 transitions. [2024-11-17 08:09:45,049 INFO L240 hiAutomatonCegarLoop]: Abstraction has 42 states and 50 transitions. [2024-11-17 08:09:45,050 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2024-11-17 08:09:45,050 INFO L425 stractBuchiCegarLoop]: Abstraction has 42 states and 50 transitions. [2024-11-17 08:09:45,050 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-11-17 08:09:45,052 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 42 states and 50 transitions. [2024-11-17 08:09:45,052 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:45,052 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:45,052 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:45,052 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:45,055 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:45,056 INFO L745 eck$LassoCheckResult]: Stem: 2148#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 2149#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 2160#L367 assume !(main_~length~0#1 < 1); 2150#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 2151#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 2152#L370 assume true; 2153#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2177#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2176#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2154#L370 assume true; 2155#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2164#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2156#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2157#L370 assume true; 2175#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2174#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2173#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2172#L370 assume true; 2170#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2171#L372 assume main_#t~mem208#1 > 0;havoc main_#t~mem208#1;call write~int#0(0, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2168#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2166#L370 assume true; 2165#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 2158#L376 main_~j~0#1 := 0; 2159#L377 assume true; 2162#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2163#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 2183#L377 assume true; 2182#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2181#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 2179#L377 [2024-11-17 08:09:45,056 INFO L747 eck$LassoCheckResult]: Loop: 2179#L377 assume true; 2180#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2178#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 2179#L377 [2024-11-17 08:09:45,056 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:45,056 INFO L85 PathProgramCache]: Analyzing trace with hash 2129951582, now seen corresponding path program 2 times [2024-11-17 08:09:45,056 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:45,056 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [791086707] [2024-11-17 08:09:45,056 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:45,056 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:45,071 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:45,071 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:45,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:45,080 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:45,080 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:45,080 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 11 times [2024-11-17 08:09:45,081 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:45,081 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1132174845] [2024-11-17 08:09:45,081 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:45,081 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:45,083 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:45,083 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:45,083 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:45,084 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:45,084 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:45,085 INFO L85 PathProgramCache]: Analyzing trace with hash -459241849, now seen corresponding path program 2 times [2024-11-17 08:09:45,085 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:45,085 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [895707885] [2024-11-17 08:09:45,085 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:45,085 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:45,092 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:45,352 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 0 proven. 41 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:45,352 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:45,352 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [895707885] [2024-11-17 08:09:45,352 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [895707885] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:45,352 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1451156177] [2024-11-17 08:09:45,353 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-17 08:09:45,353 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:45,353 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:45,354 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:45,355 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2024-11-17 08:09:45,419 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-17 08:09:45,419 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:45,420 INFO L255 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 27 conjuncts are in the unsatisfiable core [2024-11-17 08:09:45,422 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:45,491 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-17 08:09:45,553 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:09:45,554 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 11 [2024-11-17 08:09:45,563 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:09:45,564 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 11 [2024-11-17 08:09:45,662 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2024-11-17 08:09:45,663 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 0 proven. 41 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:45,664 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:45,784 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 20 treesize of output 18 [2024-11-17 08:09:45,786 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 20 [2024-11-17 08:09:45,801 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 0 proven. 41 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:45,801 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1451156177] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:45,802 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:45,802 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 12] total 26 [2024-11-17 08:09:45,802 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1756476940] [2024-11-17 08:09:45,802 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:45,833 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:45,833 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2024-11-17 08:09:45,833 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=101, Invalid=601, Unknown=0, NotChecked=0, Total=702 [2024-11-17 08:09:45,834 INFO L87 Difference]: Start difference. First operand 42 states and 50 transitions. cyclomatic complexity: 11 Second operand has 27 states, 26 states have (on average 2.6538461538461537) internal successors, (69), 27 states have internal predecessors, (69), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:45,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:45,988 INFO L93 Difference]: Finished difference Result 51 states and 59 transitions. [2024-11-17 08:09:45,988 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 51 states and 59 transitions. [2024-11-17 08:09:45,989 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:45,989 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 51 states to 51 states and 59 transitions. [2024-11-17 08:09:45,989 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 31 [2024-11-17 08:09:45,989 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 31 [2024-11-17 08:09:45,989 INFO L73 IsDeterministic]: Start isDeterministic. Operand 51 states and 59 transitions. [2024-11-17 08:09:45,989 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:45,989 INFO L218 hiAutomatonCegarLoop]: Abstraction has 51 states and 59 transitions. [2024-11-17 08:09:45,989 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states and 59 transitions. [2024-11-17 08:09:45,990 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 36. [2024-11-17 08:09:45,990 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 35 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:45,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 42 transitions. [2024-11-17 08:09:45,991 INFO L240 hiAutomatonCegarLoop]: Abstraction has 36 states and 42 transitions. [2024-11-17 08:09:45,991 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2024-11-17 08:09:45,991 INFO L425 stractBuchiCegarLoop]: Abstraction has 36 states and 42 transitions. [2024-11-17 08:09:45,991 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-11-17 08:09:45,992 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 36 states and 42 transitions. [2024-11-17 08:09:45,992 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:45,992 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:45,992 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:45,992 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:45,992 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:45,993 INFO L745 eck$LassoCheckResult]: Stem: 2469#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 2470#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 2481#L367 assume !(main_~length~0#1 < 1); 2471#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 2472#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 2473#L370 assume true; 2474#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2486#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2487#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2475#L370 assume true; 2476#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2497#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2477#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2478#L370 assume true; 2496#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2495#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2494#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2493#L370 assume true; 2490#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2492#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2491#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2489#L370 assume true; 2488#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 2479#L376 main_~j~0#1 := 0; 2480#L377 assume true; 2504#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2482#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 2483#L377 assume true; 2484#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2485#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 2503#L377 assume true; 2502#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2501#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 2499#L377 [2024-11-17 08:09:45,993 INFO L747 eck$LassoCheckResult]: Loop: 2499#L377 assume true; 2500#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2498#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 2499#L377 [2024-11-17 08:09:45,993 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:45,993 INFO L85 PathProgramCache]: Analyzing trace with hash -964800473, now seen corresponding path program 6 times [2024-11-17 08:09:45,993 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:45,993 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [97420360] [2024-11-17 08:09:45,994 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:45,994 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:46,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:46,002 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:46,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:46,013 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:46,017 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:46,017 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 12 times [2024-11-17 08:09:46,017 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:46,018 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1300812191] [2024-11-17 08:09:46,018 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:46,018 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:46,019 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:46,019 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:46,020 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:46,021 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:46,025 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:46,025 INFO L85 PathProgramCache]: Analyzing trace with hash -449736418, now seen corresponding path program 6 times [2024-11-17 08:09:46,025 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:46,025 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1163285958] [2024-11-17 08:09:46,026 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:46,026 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:46,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:46,241 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 0 proven. 50 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:46,241 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:46,241 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1163285958] [2024-11-17 08:09:46,241 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1163285958] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:46,241 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1557931363] [2024-11-17 08:09:46,241 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-17 08:09:46,241 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:46,241 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:46,244 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:46,253 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2024-11-17 08:09:46,313 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2024-11-17 08:09:46,313 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:46,314 INFO L255 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 26 conjuncts are in the unsatisfiable core [2024-11-17 08:09:46,316 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:46,486 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-17 08:09:46,663 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-17 08:09:46,668 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 0 proven. 50 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:46,668 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:46,762 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 16 treesize of output 14 [2024-11-17 08:09:46,764 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 20 treesize of output 16 [2024-11-17 08:09:46,782 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 0 proven. 50 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:46,782 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1557931363] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:46,782 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:46,782 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 12] total 26 [2024-11-17 08:09:46,782 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1371483723] [2024-11-17 08:09:46,782 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:46,807 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:46,807 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2024-11-17 08:09:46,808 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=94, Invalid=608, Unknown=0, NotChecked=0, Total=702 [2024-11-17 08:09:46,808 INFO L87 Difference]: Start difference. First operand 36 states and 42 transitions. cyclomatic complexity: 8 Second operand has 27 states, 26 states have (on average 2.8846153846153846) internal successors, (75), 27 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:47,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:47,026 INFO L93 Difference]: Finished difference Result 60 states and 70 transitions. [2024-11-17 08:09:47,026 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 60 states and 70 transitions. [2024-11-17 08:09:47,027 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-17 08:09:47,027 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 60 states to 60 states and 70 transitions. [2024-11-17 08:09:47,027 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 37 [2024-11-17 08:09:47,027 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 37 [2024-11-17 08:09:47,027 INFO L73 IsDeterministic]: Start isDeterministic. Operand 60 states and 70 transitions. [2024-11-17 08:09:47,027 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:47,027 INFO L218 hiAutomatonCegarLoop]: Abstraction has 60 states and 70 transitions. [2024-11-17 08:09:47,027 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states and 70 transitions. [2024-11-17 08:09:47,028 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 47. [2024-11-17 08:09:47,029 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 46 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:47,029 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 56 transitions. [2024-11-17 08:09:47,029 INFO L240 hiAutomatonCegarLoop]: Abstraction has 47 states and 56 transitions. [2024-11-17 08:09:47,029 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2024-11-17 08:09:47,030 INFO L425 stractBuchiCegarLoop]: Abstraction has 47 states and 56 transitions. [2024-11-17 08:09:47,030 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-11-17 08:09:47,030 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 47 states and 56 transitions. [2024-11-17 08:09:47,030 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:47,030 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:47,031 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:47,031 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:47,031 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:47,031 INFO L745 eck$LassoCheckResult]: Stem: 2815#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 2816#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 2826#L367 assume !(main_~length~0#1 < 1); 2817#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 2818#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 2819#L370 assume true; 2820#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2848#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2823#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2821#L370 assume true; 2822#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2840#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2841#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2847#L370 assume true; 2846#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2845#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2844#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2842#L370 assume true; 2843#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 2830#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 2831#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 2839#L370 assume true; 2832#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 2833#L376 main_~j~0#1 := 0; 2859#L377 assume true; 2858#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2827#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 2825#L377 assume true; 2828#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2829#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 2857#L377 assume true; 2856#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2855#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 2854#L377 assume true; 2853#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2852#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 2850#L377 [2024-11-17 08:09:47,032 INFO L747 eck$LassoCheckResult]: Loop: 2850#L377 assume true; 2851#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 2849#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 2850#L377 [2024-11-17 08:09:47,032 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:47,032 INFO L85 PathProgramCache]: Analyzing trace with hash -449736417, now seen corresponding path program 7 times [2024-11-17 08:09:47,032 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:47,032 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1273977582] [2024-11-17 08:09:47,032 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:47,036 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:47,048 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:47,052 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:47,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:47,062 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:47,063 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:47,063 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 13 times [2024-11-17 08:09:47,063 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:47,063 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1363771295] [2024-11-17 08:09:47,063 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:47,063 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:47,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:47,066 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:47,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:47,067 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:47,068 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:47,068 INFO L85 PathProgramCache]: Analyzing trace with hash -2094592730, now seen corresponding path program 7 times [2024-11-17 08:09:47,068 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:47,068 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [519675685] [2024-11-17 08:09:47,068 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:47,068 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:47,076 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:47,218 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 19 proven. 43 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:47,218 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:47,218 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [519675685] [2024-11-17 08:09:47,218 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [519675685] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:47,219 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [506296641] [2024-11-17 08:09:47,219 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-17 08:09:47,219 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:47,219 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:47,220 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:47,221 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2024-11-17 08:09:47,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:47,279 INFO L255 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 12 conjuncts are in the unsatisfiable core [2024-11-17 08:09:47,280 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:47,388 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 30 proven. 32 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:47,388 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:47,471 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 30 proven. 32 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:47,471 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [506296641] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:47,472 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:47,472 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 20 [2024-11-17 08:09:47,472 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1653624637] [2024-11-17 08:09:47,472 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:47,503 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:47,504 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2024-11-17 08:09:47,504 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=95, Invalid=285, Unknown=0, NotChecked=0, Total=380 [2024-11-17 08:09:47,504 INFO L87 Difference]: Start difference. First operand 47 states and 56 transitions. cyclomatic complexity: 12 Second operand has 20 states, 20 states have (on average 3.15) internal successors, (63), 20 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:47,560 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:47,560 INFO L93 Difference]: Finished difference Result 69 states and 79 transitions. [2024-11-17 08:09:47,560 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 69 states and 79 transitions. [2024-11-17 08:09:47,561 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:47,561 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 69 states to 53 states and 63 transitions. [2024-11-17 08:09:47,561 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 25 [2024-11-17 08:09:47,561 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 25 [2024-11-17 08:09:47,561 INFO L73 IsDeterministic]: Start isDeterministic. Operand 53 states and 63 transitions. [2024-11-17 08:09:47,562 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:47,562 INFO L218 hiAutomatonCegarLoop]: Abstraction has 53 states and 63 transitions. [2024-11-17 08:09:47,562 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states and 63 transitions. [2024-11-17 08:09:47,563 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 49. [2024-11-17 08:09:47,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 49 states have (on average 1.183673469387755) internal successors, (58), 48 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:47,563 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 58 transitions. [2024-11-17 08:09:47,563 INFO L240 hiAutomatonCegarLoop]: Abstraction has 49 states and 58 transitions. [2024-11-17 08:09:47,567 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2024-11-17 08:09:47,569 INFO L425 stractBuchiCegarLoop]: Abstraction has 49 states and 58 transitions. [2024-11-17 08:09:47,569 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-11-17 08:09:47,569 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 49 states and 58 transitions. [2024-11-17 08:09:47,569 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:47,569 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:47,569 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:47,571 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:47,571 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:47,571 INFO L745 eck$LassoCheckResult]: Stem: 3184#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 3185#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 3196#L367 assume !(main_~length~0#1 < 1); 3186#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 3187#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 3188#L370 assume true; 3189#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3217#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 3216#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3190#L370 assume true; 3191#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3200#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 3192#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3193#L370 assume true; 3215#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3214#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 3213#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3212#L370 assume true; 3211#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3210#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 3209#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3208#L370 assume true; 3206#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3207#L372 assume main_#t~mem208#1 > 0;havoc main_#t~mem208#1;call write~int#0(0, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3204#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3202#L370 assume true; 3201#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 3194#L376 main_~j~0#1 := 0; 3195#L377 assume true; 3198#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 3199#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 3226#L377 assume true; 3225#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 3224#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 3223#L377 assume true; 3222#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 3221#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 3219#L377 [2024-11-17 08:09:47,571 INFO L747 eck$LassoCheckResult]: Loop: 3219#L377 assume true; 3220#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 3218#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 3219#L377 [2024-11-17 08:09:47,572 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:47,572 INFO L85 PathProgramCache]: Analyzing trace with hash 1763597221, now seen corresponding path program 3 times [2024-11-17 08:09:47,572 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:47,572 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [801916009] [2024-11-17 08:09:47,572 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:47,572 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:47,581 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:47,581 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:47,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:47,588 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:47,588 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:47,588 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 14 times [2024-11-17 08:09:47,589 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:47,589 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [369674700] [2024-11-17 08:09:47,589 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:47,589 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:47,590 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:47,590 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:47,591 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:47,592 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:47,592 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:47,592 INFO L85 PathProgramCache]: Analyzing trace with hash -1010111264, now seen corresponding path program 3 times [2024-11-17 08:09:47,592 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:47,592 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1995927536] [2024-11-17 08:09:47,593 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:47,593 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:47,608 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:47,887 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 0 proven. 68 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:47,888 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:47,888 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1995927536] [2024-11-17 08:09:47,888 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1995927536] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:47,888 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1612747241] [2024-11-17 08:09:47,888 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-17 08:09:47,888 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:47,888 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:47,890 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:47,894 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2024-11-17 08:09:47,965 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2024-11-17 08:09:47,965 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:47,969 INFO L255 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 31 conjuncts are in the unsatisfiable core [2024-11-17 08:09:47,971 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:48,066 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-17 08:09:48,114 INFO L349 Elim1Store]: treesize reduction 19, result has 36.7 percent of original size [2024-11-17 08:09:48,115 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 1 case distinctions, treesize of input 27 treesize of output 15 [2024-11-17 08:09:48,150 INFO L349 Elim1Store]: treesize reduction 19, result has 36.7 percent of original size [2024-11-17 08:09:48,151 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 1 case distinctions, treesize of input 31 treesize of output 19 [2024-11-17 08:09:48,271 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-17 08:09:48,272 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 0 proven. 65 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-11-17 08:09:48,273 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:48,407 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 16 treesize of output 14 [2024-11-17 08:09:48,408 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 20 treesize of output 16 [2024-11-17 08:09:48,422 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 0 proven. 65 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-11-17 08:09:48,422 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1612747241] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:48,422 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:48,422 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14, 13] total 29 [2024-11-17 08:09:48,422 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1525405026] [2024-11-17 08:09:48,422 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:48,453 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:48,454 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2024-11-17 08:09:48,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=122, Invalid=748, Unknown=0, NotChecked=0, Total=870 [2024-11-17 08:09:48,454 INFO L87 Difference]: Start difference. First operand 49 states and 58 transitions. cyclomatic complexity: 12 Second operand has 30 states, 29 states have (on average 2.8275862068965516) internal successors, (82), 30 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:48,757 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:48,758 INFO L93 Difference]: Finished difference Result 65 states and 75 transitions. [2024-11-17 08:09:48,758 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 65 states and 75 transitions. [2024-11-17 08:09:48,758 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:48,758 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 65 states to 65 states and 75 transitions. [2024-11-17 08:09:48,759 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 37 [2024-11-17 08:09:48,759 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 37 [2024-11-17 08:09:48,759 INFO L73 IsDeterministic]: Start isDeterministic. Operand 65 states and 75 transitions. [2024-11-17 08:09:48,759 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:48,759 INFO L218 hiAutomatonCegarLoop]: Abstraction has 65 states and 75 transitions. [2024-11-17 08:09:48,759 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states and 75 transitions. [2024-11-17 08:09:48,760 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 43. [2024-11-17 08:09:48,760 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 43 states have (on average 1.1627906976744187) internal successors, (50), 42 states have internal predecessors, (50), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:48,760 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 50 transitions. [2024-11-17 08:09:48,760 INFO L240 hiAutomatonCegarLoop]: Abstraction has 43 states and 50 transitions. [2024-11-17 08:09:48,762 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2024-11-17 08:09:48,763 INFO L425 stractBuchiCegarLoop]: Abstraction has 43 states and 50 transitions. [2024-11-17 08:09:48,763 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-11-17 08:09:48,763 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 43 states and 50 transitions. [2024-11-17 08:09:48,763 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:48,763 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:48,763 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:48,765 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 5, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:48,765 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:48,765 INFO L745 eck$LassoCheckResult]: Stem: 3577#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 3578#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 3589#L367 assume !(main_~length~0#1 < 1); 3579#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 3580#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 3581#L370 assume true; 3582#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3594#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 3595#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3583#L370 assume true; 3584#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3597#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 3585#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3586#L370 assume true; 3609#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3608#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 3607#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3606#L370 assume true; 3605#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3604#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 3603#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3602#L370 assume true; 3599#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 3601#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 3600#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3598#L370 assume true; 3596#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 3587#L376 main_~j~0#1 := 0; 3588#L377 assume true; 3619#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 3590#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 3591#L377 assume true; 3592#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 3593#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 3618#L377 assume true; 3617#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 3616#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 3615#L377 assume true; 3614#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 3613#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 3611#L377 [2024-11-17 08:09:48,767 INFO L747 eck$LassoCheckResult]: Loop: 3611#L377 assume true; 3612#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 3610#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 3611#L377 [2024-11-17 08:09:48,767 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:48,767 INFO L85 PathProgramCache]: Analyzing trace with hash 343198434, now seen corresponding path program 8 times [2024-11-17 08:09:48,767 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:48,767 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [914005581] [2024-11-17 08:09:48,767 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:48,767 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:48,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:48,780 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:48,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:48,793 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:48,793 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:48,793 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 15 times [2024-11-17 08:09:48,793 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:48,793 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1708470938] [2024-11-17 08:09:48,793 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:48,794 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:48,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:48,796 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:48,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:48,798 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:48,799 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:48,799 INFO L85 PathProgramCache]: Analyzing trace with hash -2092574589, now seen corresponding path program 8 times [2024-11-17 08:09:48,799 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:48,799 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1134513329] [2024-11-17 08:09:48,799 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:48,800 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:48,812 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:49,044 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 0 proven. 80 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:49,044 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:49,044 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1134513329] [2024-11-17 08:09:49,044 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1134513329] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:49,044 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1918533609] [2024-11-17 08:09:49,044 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-17 08:09:49,044 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:49,045 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:49,046 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:49,049 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2024-11-17 08:09:49,112 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-17 08:09:49,113 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:49,114 INFO L255 TraceCheckSpWp]: Trace formula consists of 165 conjuncts, 30 conjuncts are in the unsatisfiable core [2024-11-17 08:09:49,115 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:49,229 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-17 08:09:49,419 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-17 08:09:49,421 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 0 proven. 80 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:49,421 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:49,537 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 14 [2024-11-17 08:09:49,540 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 20 treesize of output 16 [2024-11-17 08:09:49,566 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 0 proven. 80 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:49,566 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1918533609] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:49,566 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:49,566 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15, 14] total 30 [2024-11-17 08:09:49,567 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [953463157] [2024-11-17 08:09:49,567 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:49,607 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:49,607 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2024-11-17 08:09:49,611 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=821, Unknown=0, NotChecked=0, Total=930 [2024-11-17 08:09:49,611 INFO L87 Difference]: Start difference. First operand 43 states and 50 transitions. cyclomatic complexity: 9 Second operand has 31 states, 30 states have (on average 2.966666666666667) internal successors, (89), 31 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:50,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:50,015 INFO L93 Difference]: Finished difference Result 70 states and 81 transitions. [2024-11-17 08:09:50,015 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 70 states and 81 transitions. [2024-11-17 08:09:50,017 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-17 08:09:50,021 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 70 states to 70 states and 81 transitions. [2024-11-17 08:09:50,022 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 43 [2024-11-17 08:09:50,023 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 43 [2024-11-17 08:09:50,023 INFO L73 IsDeterministic]: Start isDeterministic. Operand 70 states and 81 transitions. [2024-11-17 08:09:50,023 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:50,023 INFO L218 hiAutomatonCegarLoop]: Abstraction has 70 states and 81 transitions. [2024-11-17 08:09:50,023 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states and 81 transitions. [2024-11-17 08:09:50,028 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 54. [2024-11-17 08:09:50,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 54 states have (on average 1.1851851851851851) internal successors, (64), 53 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:50,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 64 transitions. [2024-11-17 08:09:50,032 INFO L240 hiAutomatonCegarLoop]: Abstraction has 54 states and 64 transitions. [2024-11-17 08:09:50,032 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-11-17 08:09:50,032 INFO L425 stractBuchiCegarLoop]: Abstraction has 54 states and 64 transitions. [2024-11-17 08:09:50,033 INFO L332 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2024-11-17 08:09:50,033 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 54 states and 64 transitions. [2024-11-17 08:09:50,033 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:50,033 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:50,033 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:50,033 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:50,033 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:50,033 INFO L745 eck$LassoCheckResult]: Stem: 3986#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 3987#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 3998#L367 assume !(main_~length~0#1 < 1); 3988#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 3989#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 3990#L370 assume true; 3991#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4002#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4003#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3992#L370 assume true; 3993#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4023#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 3994#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 3995#L370 assume true; 4022#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4021#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4020#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4019#L370 assume true; 4018#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4017#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4016#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4014#L370 assume true; 4015#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4011#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4009#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4010#L370 assume true; 4004#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 4005#L376 main_~j~0#1 := 0; 4037#L377 assume true; 4036#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 3999#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 3997#L377 assume true; 4000#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4001#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4035#L377 assume true; 4034#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4033#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4032#L377 assume true; 4031#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4030#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4029#L377 assume true; 4028#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4027#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4025#L377 [2024-11-17 08:09:50,033 INFO L747 eck$LassoCheckResult]: Loop: 4025#L377 assume true; 4026#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4024#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 4025#L377 [2024-11-17 08:09:50,034 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:50,034 INFO L85 PathProgramCache]: Analyzing trace with hash -2092574588, now seen corresponding path program 9 times [2024-11-17 08:09:50,034 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:50,034 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [301153093] [2024-11-17 08:09:50,034 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:50,034 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:50,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:50,051 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:50,057 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:50,058 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:50,059 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:50,059 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 16 times [2024-11-17 08:09:50,059 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:50,059 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1227774677] [2024-11-17 08:09:50,059 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:50,059 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:50,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:50,061 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:50,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:50,062 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:50,062 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:50,062 INFO L85 PathProgramCache]: Analyzing trace with hash 1560760225, now seen corresponding path program 9 times [2024-11-17 08:09:50,063 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:50,063 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1978117638] [2024-11-17 08:09:50,063 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:50,063 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:50,075 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:50,279 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 31 proven. 64 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:50,280 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:50,280 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1978117638] [2024-11-17 08:09:50,280 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1978117638] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:50,280 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [119974524] [2024-11-17 08:09:50,280 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-17 08:09:50,280 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:50,281 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:50,282 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:50,284 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2024-11-17 08:09:50,353 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2024-11-17 08:09:50,354 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:50,355 INFO L255 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 14 conjuncts are in the unsatisfiable core [2024-11-17 08:09:50,356 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:50,594 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 45 proven. 50 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:50,594 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:50,705 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 45 proven. 50 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:50,706 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [119974524] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:50,706 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:50,706 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15, 15] total 23 [2024-11-17 08:09:50,706 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1912589663] [2024-11-17 08:09:50,706 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:50,736 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:50,736 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2024-11-17 08:09:50,737 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=124, Invalid=382, Unknown=0, NotChecked=0, Total=506 [2024-11-17 08:09:50,737 INFO L87 Difference]: Start difference. First operand 54 states and 64 transitions. cyclomatic complexity: 13 Second operand has 23 states, 23 states have (on average 3.1739130434782608) internal successors, (73), 23 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:50,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:50,787 INFO L93 Difference]: Finished difference Result 79 states and 90 transitions. [2024-11-17 08:09:50,787 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 79 states and 90 transitions. [2024-11-17 08:09:50,790 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:50,791 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 79 states to 60 states and 71 transitions. [2024-11-17 08:09:50,791 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2024-11-17 08:09:50,791 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2024-11-17 08:09:50,791 INFO L73 IsDeterministic]: Start isDeterministic. Operand 60 states and 71 transitions. [2024-11-17 08:09:50,791 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:50,791 INFO L218 hiAutomatonCegarLoop]: Abstraction has 60 states and 71 transitions. [2024-11-17 08:09:50,791 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states and 71 transitions. [2024-11-17 08:09:50,792 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 56. [2024-11-17 08:09:50,792 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:50,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 66 transitions. [2024-11-17 08:09:50,792 INFO L240 hiAutomatonCegarLoop]: Abstraction has 56 states and 66 transitions. [2024-11-17 08:09:50,799 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2024-11-17 08:09:50,800 INFO L425 stractBuchiCegarLoop]: Abstraction has 56 states and 66 transitions. [2024-11-17 08:09:50,800 INFO L332 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2024-11-17 08:09:50,800 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 56 states and 66 transitions. [2024-11-17 08:09:50,800 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:50,800 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:50,800 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:50,801 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 6, 5, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:50,801 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:50,801 INFO L745 eck$LassoCheckResult]: Stem: 4417#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 4418#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 4429#L367 assume !(main_~length~0#1 < 1); 4419#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 4420#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 4421#L370 assume true; 4422#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4435#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4454#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4423#L370 assume true; 4424#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4433#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4425#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4426#L370 assume true; 4453#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4452#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4451#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4450#L370 assume true; 4449#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4448#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4447#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4446#L370 assume true; 4445#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4444#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4443#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4442#L370 assume true; 4440#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4441#L372 assume main_#t~mem208#1 > 0;havoc main_#t~mem208#1;call write~int#0(0, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4438#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4436#L370 assume true; 4434#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 4427#L376 main_~j~0#1 := 0; 4428#L377 assume true; 4431#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4432#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4466#L377 assume true; 4465#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4464#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4463#L377 assume true; 4462#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4461#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4460#L377 assume true; 4459#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4458#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4456#L377 [2024-11-17 08:09:50,801 INFO L747 eck$LassoCheckResult]: Loop: 4456#L377 assume true; 4457#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4455#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 4456#L377 [2024-11-17 08:09:50,802 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:50,802 INFO L85 PathProgramCache]: Analyzing trace with hash -947548892, now seen corresponding path program 4 times [2024-11-17 08:09:50,802 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:50,802 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1318327461] [2024-11-17 08:09:50,802 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:50,802 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:50,812 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:50,812 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:50,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:50,820 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:50,820 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:50,820 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 17 times [2024-11-17 08:09:50,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:50,820 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1838133901] [2024-11-17 08:09:50,821 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:50,821 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:50,822 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:50,823 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:50,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:50,824 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:50,824 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:50,824 INFO L85 PathProgramCache]: Analyzing trace with hash -1903962367, now seen corresponding path program 4 times [2024-11-17 08:09:50,824 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:50,825 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1557763949] [2024-11-17 08:09:50,825 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:50,825 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:50,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:51,109 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 0 proven. 102 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:51,110 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:51,110 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1557763949] [2024-11-17 08:09:51,110 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1557763949] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:51,110 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [997405472] [2024-11-17 08:09:51,110 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-17 08:09:51,110 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:51,110 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:51,113 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:51,114 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2024-11-17 08:09:51,181 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-17 08:09:51,182 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:51,182 INFO L255 TraceCheckSpWp]: Trace formula consists of 172 conjuncts, 31 conjuncts are in the unsatisfiable core [2024-11-17 08:09:51,184 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:51,204 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 19 treesize of output 1 [2024-11-17 08:09:51,254 INFO L349 Elim1Store]: treesize reduction 27, result has 25.0 percent of original size [2024-11-17 08:09:51,254 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 1 case distinctions, treesize of input 33 treesize of output 13 [2024-11-17 08:09:51,264 INFO L349 Elim1Store]: treesize reduction 27, result has 25.0 percent of original size [2024-11-17 08:09:51,264 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 1 case distinctions, treesize of input 33 treesize of output 13 [2024-11-17 08:09:51,362 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 7 [2024-11-17 08:09:51,363 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 0 proven. 102 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:51,363 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:51,534 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 20 treesize of output 18 [2024-11-17 08:09:51,537 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 20 [2024-11-17 08:09:51,555 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 0 proven. 102 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:51,555 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [997405472] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:51,555 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:51,555 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16, 16] total 25 [2024-11-17 08:09:51,555 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1340728845] [2024-11-17 08:09:51,555 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:51,586 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:51,586 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2024-11-17 08:09:51,587 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=575, Unknown=0, NotChecked=0, Total=650 [2024-11-17 08:09:51,587 INFO L87 Difference]: Start difference. First operand 56 states and 66 transitions. cyclomatic complexity: 13 Second operand has 26 states, 25 states have (on average 2.88) internal successors, (72), 26 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:51,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:51,840 INFO L93 Difference]: Finished difference Result 71 states and 81 transitions. [2024-11-17 08:09:51,840 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 71 states and 81 transitions. [2024-11-17 08:09:51,841 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:51,841 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 71 states to 71 states and 81 transitions. [2024-11-17 08:09:51,841 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 43 [2024-11-17 08:09:51,841 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 43 [2024-11-17 08:09:51,841 INFO L73 IsDeterministic]: Start isDeterministic. Operand 71 states and 81 transitions. [2024-11-17 08:09:51,842 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:51,842 INFO L218 hiAutomatonCegarLoop]: Abstraction has 71 states and 81 transitions. [2024-11-17 08:09:51,842 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states and 81 transitions. [2024-11-17 08:09:51,842 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 50. [2024-11-17 08:09:51,842 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 50 states have (on average 1.16) internal successors, (58), 49 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:51,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 58 transitions. [2024-11-17 08:09:51,843 INFO L240 hiAutomatonCegarLoop]: Abstraction has 50 states and 58 transitions. [2024-11-17 08:09:51,843 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2024-11-17 08:09:51,844 INFO L425 stractBuchiCegarLoop]: Abstraction has 50 states and 58 transitions. [2024-11-17 08:09:51,844 INFO L332 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2024-11-17 08:09:51,844 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 50 states and 58 transitions. [2024-11-17 08:09:51,844 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:51,844 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:51,844 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:51,844 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 6, 6, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:51,844 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:51,844 INFO L745 eck$LassoCheckResult]: Stem: 4853#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 4854#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 4865#L367 assume !(main_~length~0#1 < 1); 4855#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 4856#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 4857#L370 assume true; 4858#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4870#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4871#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4859#L370 assume true; 4860#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4889#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4861#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4862#L370 assume true; 4888#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4887#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4886#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4885#L370 assume true; 4884#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4883#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4882#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4881#L370 assume true; 4880#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4879#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4878#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4877#L370 assume true; 4874#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 4876#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 4875#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 4873#L370 assume true; 4872#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 4863#L376 main_~j~0#1 := 0; 4864#L377 assume true; 4902#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4866#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4867#L377 assume true; 4868#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4869#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4901#L377 assume true; 4900#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4899#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4898#L377 assume true; 4897#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4896#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4895#L377 assume true; 4894#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4893#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 4891#L377 [2024-11-17 08:09:51,845 INFO L747 eck$LassoCheckResult]: Loop: 4891#L377 assume true; 4892#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 4890#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 4891#L377 [2024-11-17 08:09:51,845 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:51,845 INFO L85 PathProgramCache]: Analyzing trace with hash 1982180705, now seen corresponding path program 10 times [2024-11-17 08:09:51,845 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:51,845 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1469569227] [2024-11-17 08:09:51,845 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:51,845 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:51,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:51,856 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:51,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:51,875 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:51,876 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:51,876 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 18 times [2024-11-17 08:09:51,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:51,876 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1500577054] [2024-11-17 08:09:51,876 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:51,877 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:51,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:51,879 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:51,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:51,880 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:51,881 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:51,881 INFO L85 PathProgramCache]: Analyzing trace with hash -359960156, now seen corresponding path program 10 times [2024-11-17 08:09:51,881 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:51,881 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1777662728] [2024-11-17 08:09:51,881 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:51,881 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:51,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:52,124 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 0 proven. 117 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:52,124 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:52,124 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1777662728] [2024-11-17 08:09:52,124 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1777662728] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:52,124 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1680460351] [2024-11-17 08:09:52,124 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-17 08:09:52,125 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:52,125 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:52,127 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:52,128 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2024-11-17 08:09:52,198 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-17 08:09:52,198 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:52,199 INFO L255 TraceCheckSpWp]: Trace formula consists of 176 conjuncts, 30 conjuncts are in the unsatisfiable core [2024-11-17 08:09:52,202 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:52,229 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 19 treesize of output 1 [2024-11-17 08:09:52,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 19 treesize of output 7 [2024-11-17 08:09:52,428 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 0 proven. 117 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:52,428 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:52,553 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 16 treesize of output 14 [2024-11-17 08:09:52,555 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 20 treesize of output 16 [2024-11-17 08:09:52,576 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 0 proven. 117 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:52,576 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1680460351] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:52,576 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:52,576 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 16, 16] total 25 [2024-11-17 08:09:52,576 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2042864290] [2024-11-17 08:09:52,576 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:52,610 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:52,611 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2024-11-17 08:09:52,611 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=575, Unknown=0, NotChecked=0, Total=650 [2024-11-17 08:09:52,611 INFO L87 Difference]: Start difference. First operand 50 states and 58 transitions. cyclomatic complexity: 10 Second operand has 26 states, 25 states have (on average 2.96) internal successors, (74), 26 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:52,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:52,899 INFO L93 Difference]: Finished difference Result 80 states and 92 transitions. [2024-11-17 08:09:52,899 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 80 states and 92 transitions. [2024-11-17 08:09:52,900 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-17 08:09:52,900 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 80 states to 80 states and 92 transitions. [2024-11-17 08:09:52,900 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 49 [2024-11-17 08:09:52,900 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 49 [2024-11-17 08:09:52,900 INFO L73 IsDeterministic]: Start isDeterministic. Operand 80 states and 92 transitions. [2024-11-17 08:09:52,900 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:52,901 INFO L218 hiAutomatonCegarLoop]: Abstraction has 80 states and 92 transitions. [2024-11-17 08:09:52,901 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states and 92 transitions. [2024-11-17 08:09:52,901 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 61. [2024-11-17 08:09:52,902 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 61 states have (on average 1.180327868852459) internal successors, (72), 60 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:52,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 72 transitions. [2024-11-17 08:09:52,902 INFO L240 hiAutomatonCegarLoop]: Abstraction has 61 states and 72 transitions. [2024-11-17 08:09:52,902 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2024-11-17 08:09:52,902 INFO L425 stractBuchiCegarLoop]: Abstraction has 61 states and 72 transitions. [2024-11-17 08:09:52,902 INFO L332 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2024-11-17 08:09:52,902 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 61 states and 72 transitions. [2024-11-17 08:09:52,903 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:52,903 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:52,903 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:52,903 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 6, 6, 6, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:52,903 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:52,903 INFO L745 eck$LassoCheckResult]: Stem: 5310#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 5311#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 5322#L367 assume !(main_~length~0#1 < 1); 5312#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 5313#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 5314#L370 assume true; 5315#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5326#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5327#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5316#L370 assume true; 5317#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5351#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5318#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5319#L370 assume true; 5350#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5349#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5348#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5347#L370 assume true; 5346#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5345#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5344#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5343#L370 assume true; 5342#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5341#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5340#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5338#L370 assume true; 5339#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5335#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5333#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5334#L370 assume true; 5328#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 5329#L376 main_~j~0#1 := 0; 5368#L377 assume true; 5367#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5323#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5321#L377 assume true; 5324#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5325#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5366#L377 assume true; 5365#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5364#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5363#L377 assume true; 5362#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5361#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5360#L377 assume true; 5359#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5358#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5357#L377 assume true; 5356#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5355#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5353#L377 [2024-11-17 08:09:52,903 INFO L747 eck$LassoCheckResult]: Loop: 5353#L377 assume true; 5354#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5352#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 5353#L377 [2024-11-17 08:09:52,904 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:52,904 INFO L85 PathProgramCache]: Analyzing trace with hash -359960155, now seen corresponding path program 11 times [2024-11-17 08:09:52,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:52,904 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [867649309] [2024-11-17 08:09:52,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:52,904 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:52,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:52,924 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:52,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:52,942 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:52,946 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:52,946 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 19 times [2024-11-17 08:09:52,946 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:52,947 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1135562194] [2024-11-17 08:09:52,947 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:52,947 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:52,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:52,949 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:52,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:52,954 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:52,955 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:52,955 INFO L85 PathProgramCache]: Analyzing trace with hash 960370400, now seen corresponding path program 11 times [2024-11-17 08:09:52,955 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:52,955 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [487773819] [2024-11-17 08:09:52,955 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:52,955 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:52,971 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:53,227 INFO L134 CoverageAnalysis]: Checked inductivity of 135 backedges. 46 proven. 89 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:53,227 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:53,228 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [487773819] [2024-11-17 08:09:53,228 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [487773819] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:53,228 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1315703555] [2024-11-17 08:09:53,228 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-17 08:09:53,228 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:53,228 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:53,233 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:53,235 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2024-11-17 08:09:53,327 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 7 check-sat command(s) [2024-11-17 08:09:53,327 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:53,328 INFO L255 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 16 conjuncts are in the unsatisfiable core [2024-11-17 08:09:53,329 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:53,482 INFO L134 CoverageAnalysis]: Checked inductivity of 135 backedges. 63 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:53,483 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:53,603 INFO L134 CoverageAnalysis]: Checked inductivity of 135 backedges. 51 proven. 84 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:53,604 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1315703555] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:53,604 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:53,604 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17, 17] total 26 [2024-11-17 08:09:53,604 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [354848762] [2024-11-17 08:09:53,604 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:53,634 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:53,635 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2024-11-17 08:09:53,635 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=157, Invalid=493, Unknown=0, NotChecked=0, Total=650 [2024-11-17 08:09:53,635 INFO L87 Difference]: Start difference. First operand 61 states and 72 transitions. cyclomatic complexity: 14 Second operand has 26 states, 26 states have (on average 3.1153846153846154) internal successors, (81), 26 states have internal predecessors, (81), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:53,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:53,715 INFO L93 Difference]: Finished difference Result 89 states and 101 transitions. [2024-11-17 08:09:53,715 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 89 states and 101 transitions. [2024-11-17 08:09:53,715 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:53,716 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 89 states to 67 states and 79 transitions. [2024-11-17 08:09:53,716 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 31 [2024-11-17 08:09:53,716 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 31 [2024-11-17 08:09:53,716 INFO L73 IsDeterministic]: Start isDeterministic. Operand 67 states and 79 transitions. [2024-11-17 08:09:53,716 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:53,716 INFO L218 hiAutomatonCegarLoop]: Abstraction has 67 states and 79 transitions. [2024-11-17 08:09:53,716 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states and 79 transitions. [2024-11-17 08:09:53,718 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 63. [2024-11-17 08:09:53,718 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 63 states, 63 states have (on average 1.1746031746031746) internal successors, (74), 62 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:53,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 74 transitions. [2024-11-17 08:09:53,718 INFO L240 hiAutomatonCegarLoop]: Abstraction has 63 states and 74 transitions. [2024-11-17 08:09:53,718 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2024-11-17 08:09:53,719 INFO L425 stractBuchiCegarLoop]: Abstraction has 63 states and 74 transitions. [2024-11-17 08:09:53,719 INFO L332 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2024-11-17 08:09:53,719 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 63 states and 74 transitions. [2024-11-17 08:09:53,719 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:53,719 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:53,719 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:53,720 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 7, 7, 6, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:53,720 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:53,720 INFO L745 eck$LassoCheckResult]: Stem: 5803#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 5804#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 5815#L367 assume !(main_~length~0#1 < 1); 5805#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 5806#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 5807#L370 assume true; 5808#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5821#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5844#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5809#L370 assume true; 5810#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5819#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5811#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5812#L370 assume true; 5843#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5842#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5841#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5840#L370 assume true; 5839#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5838#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5837#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5836#L370 assume true; 5835#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5834#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5833#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5832#L370 assume true; 5831#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5830#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 5829#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5828#L370 assume true; 5826#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5827#L372 assume main_#t~mem208#1 > 0;havoc main_#t~mem208#1;call write~int#0(0, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 5824#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 5822#L370 assume true; 5820#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 5813#L376 main_~j~0#1 := 0; 5814#L377 assume true; 5817#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5818#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5859#L377 assume true; 5858#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5857#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5856#L377 assume true; 5855#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5854#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5853#L377 assume true; 5852#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5851#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5850#L377 assume true; 5849#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5848#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 5846#L377 [2024-11-17 08:09:53,720 INFO L747 eck$LassoCheckResult]: Loop: 5846#L377 assume true; 5847#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 5845#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 5846#L377 [2024-11-17 08:09:53,720 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:53,720 INFO L85 PathProgramCache]: Analyzing trace with hash -1316752033, now seen corresponding path program 5 times [2024-11-17 08:09:53,721 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:53,721 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [459847465] [2024-11-17 08:09:53,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:53,721 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:53,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:53,732 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:53,738 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:53,741 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:53,741 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:53,741 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 20 times [2024-11-17 08:09:53,741 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:53,741 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1143168595] [2024-11-17 08:09:53,741 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:53,742 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:53,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:53,744 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:53,744 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:53,745 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:53,745 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:53,746 INFO L85 PathProgramCache]: Analyzing trace with hash -1423490842, now seen corresponding path program 5 times [2024-11-17 08:09:53,746 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:53,746 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1361043207] [2024-11-17 08:09:53,746 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:53,746 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:53,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:54,128 INFO L134 CoverageAnalysis]: Checked inductivity of 143 backedges. 0 proven. 143 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:54,128 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:54,128 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1361043207] [2024-11-17 08:09:54,128 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1361043207] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:54,128 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [986660383] [2024-11-17 08:09:54,128 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-17 08:09:54,129 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:54,129 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:54,131 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:54,132 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2024-11-17 08:09:54,244 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2024-11-17 08:09:54,244 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:54,247 INFO L255 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 39 conjuncts are in the unsatisfiable core [2024-11-17 08:09:54,248 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:54,396 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-17 08:09:54,473 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:09:54,474 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 11 [2024-11-17 08:09:54,482 INFO L190 IndexEqualityManager]: detected not equals via solver [2024-11-17 08:09:54,482 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 27 treesize of output 11 [2024-11-17 08:09:54,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 15 treesize of output 7 [2024-11-17 08:09:54,725 INFO L134 CoverageAnalysis]: Checked inductivity of 143 backedges. 0 proven. 143 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:54,725 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:54,942 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 20 treesize of output 18 [2024-11-17 08:09:54,944 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 20 [2024-11-17 08:09:54,965 INFO L134 CoverageAnalysis]: Checked inductivity of 143 backedges. 0 proven. 143 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:54,965 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [986660383] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:54,965 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:54,966 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 20, 19] total 40 [2024-11-17 08:09:54,966 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [836808103] [2024-11-17 08:09:54,966 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:54,996 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:54,997 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2024-11-17 08:09:54,997 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=155, Invalid=1485, Unknown=0, NotChecked=0, Total=1640 [2024-11-17 08:09:54,997 INFO L87 Difference]: Start difference. First operand 63 states and 74 transitions. cyclomatic complexity: 14 Second operand has 41 states, 40 states have (on average 2.775) internal successors, (111), 41 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-17 08:09:55,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:55,401 INFO L93 Difference]: Finished difference Result 81 states and 92 transitions. [2024-11-17 08:09:55,401 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 81 states and 92 transitions. [2024-11-17 08:09:55,402 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:55,402 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 81 states to 81 states and 92 transitions. [2024-11-17 08:09:55,402 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 49 [2024-11-17 08:09:55,402 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 49 [2024-11-17 08:09:55,402 INFO L73 IsDeterministic]: Start isDeterministic. Operand 81 states and 92 transitions. [2024-11-17 08:09:55,402 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:55,402 INFO L218 hiAutomatonCegarLoop]: Abstraction has 81 states and 92 transitions. [2024-11-17 08:09:55,402 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states and 92 transitions. [2024-11-17 08:09:55,403 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 57. [2024-11-17 08:09:55,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 57 states have (on average 1.1578947368421053) internal successors, (66), 56 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:55,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 66 transitions. [2024-11-17 08:09:55,404 INFO L240 hiAutomatonCegarLoop]: Abstraction has 57 states and 66 transitions. [2024-11-17 08:09:55,404 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-11-17 08:09:55,404 INFO L425 stractBuchiCegarLoop]: Abstraction has 57 states and 66 transitions. [2024-11-17 08:09:55,404 INFO L332 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2024-11-17 08:09:55,404 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 57 states and 66 transitions. [2024-11-17 08:09:55,405 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:55,405 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:55,405 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:55,405 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 7, 7, 7, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:55,405 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:55,405 INFO L745 eck$LassoCheckResult]: Stem: 6315#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 6316#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 6327#L367 assume !(main_~length~0#1 < 1); 6317#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 6318#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 6319#L370 assume true; 6320#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6332#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6333#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6321#L370 assume true; 6322#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6355#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6323#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6324#L370 assume true; 6354#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6353#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6352#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6351#L370 assume true; 6350#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6349#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6348#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6347#L370 assume true; 6346#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6345#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6344#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6343#L370 assume true; 6342#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6341#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6340#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6339#L370 assume true; 6336#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6338#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6337#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6335#L370 assume true; 6334#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 6325#L376 main_~j~0#1 := 0; 6326#L377 assume true; 6371#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 6328#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 6329#L377 assume true; 6330#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 6331#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 6370#L377 assume true; 6369#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 6368#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 6367#L377 assume true; 6366#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 6365#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 6364#L377 assume true; 6363#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 6362#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 6361#L377 assume true; 6360#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 6359#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 6357#L377 [2024-11-17 08:09:55,405 INFO L747 eck$LassoCheckResult]: Loop: 6357#L377 assume true; 6358#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 6356#L378 assume main_#t~mem210#1 > 0;havoc main_#t~mem210#1;main_#t~post211#1 := main_~j~0#1;main_~j~0#1 := main_#t~post211#1 - 1;havoc main_#t~post211#1; 6357#L377 [2024-11-17 08:09:55,406 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:55,406 INFO L85 PathProgramCache]: Analyzing trace with hash -178726360, now seen corresponding path program 12 times [2024-11-17 08:09:55,406 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:55,406 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2024580449] [2024-11-17 08:09:55,406 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:55,406 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:55,417 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:55,418 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:55,424 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:55,427 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:55,427 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:55,427 INFO L85 PathProgramCache]: Analyzing trace with hash 39684, now seen corresponding path program 21 times [2024-11-17 08:09:55,428 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:55,428 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1235084658] [2024-11-17 08:09:55,428 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:55,428 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:55,430 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:55,430 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:55,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:55,432 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:55,432 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:55,432 INFO L85 PathProgramCache]: Analyzing trace with hash 1322466173, now seen corresponding path program 12 times [2024-11-17 08:09:55,432 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:55,432 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [713884342] [2024-11-17 08:09:55,432 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:55,432 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:55,442 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:09:55,694 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 0 proven. 161 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:55,694 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-17 08:09:55,694 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [713884342] [2024-11-17 08:09:55,694 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [713884342] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-17 08:09:55,694 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [219100660] [2024-11-17 08:09:55,694 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-17 08:09:55,694 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-17 08:09:55,695 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:09:55,697 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-17 08:09:55,698 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2024-11-17 08:09:55,807 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2024-11-17 08:09:55,807 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-17 08:09:55,808 INFO L255 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 23 conjuncts are in the unsatisfiable core [2024-11-17 08:09:55,809 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:09:55,941 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 23 treesize of output 1 [2024-11-17 08:09:56,405 INFO L349 Elim1Store]: treesize reduction 5, result has 37.5 percent of original size [2024-11-17 08:09:56,405 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 10 [2024-11-17 08:09:56,408 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 57 proven. 104 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:56,408 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-17 08:09:57,008 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 18 treesize of output 16 [2024-11-17 08:09:57,010 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 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 22 treesize of output 16 [2024-11-17 08:09:57,136 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 45 proven. 116 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:09:57,136 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [219100660] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-17 08:09:57,136 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-17 08:09:57,136 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 20, 20] total 48 [2024-11-17 08:09:57,136 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1755484832] [2024-11-17 08:09:57,136 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-17 08:09:57,167 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-17 08:09:57,168 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 49 interpolants. [2024-11-17 08:09:57,168 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=287, Invalid=2065, Unknown=0, NotChecked=0, Total=2352 [2024-11-17 08:09:57,169 INFO L87 Difference]: Start difference. First operand 57 states and 66 transitions. cyclomatic complexity: 11 Second operand has 49 states, 48 states have (on average 2.8125) internal successors, (135), 49 states have internal predecessors, (135), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:09:58,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-17 08:09:58,698 INFO L93 Difference]: Finished difference Result 87 states and 97 transitions. [2024-11-17 08:09:58,698 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 87 states and 97 transitions. [2024-11-17 08:09:58,699 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-17 08:09:58,699 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 87 states to 87 states and 97 transitions. [2024-11-17 08:09:58,699 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 54 [2024-11-17 08:09:58,699 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 54 [2024-11-17 08:09:58,700 INFO L73 IsDeterministic]: Start isDeterministic. Operand 87 states and 97 transitions. [2024-11-17 08:09:58,700 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-17 08:09:58,700 INFO L218 hiAutomatonCegarLoop]: Abstraction has 87 states and 97 transitions. [2024-11-17 08:09:58,700 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 87 states and 97 transitions. [2024-11-17 08:09:58,700 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 87 to 39. [2024-11-17 08:09:58,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 39 states have (on average 1.205128205128205) internal successors, (47), 38 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-17 08:09:58,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 47 transitions. [2024-11-17 08:09:58,701 INFO L240 hiAutomatonCegarLoop]: Abstraction has 39 states and 47 transitions. [2024-11-17 08:09:58,701 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 46 states. [2024-11-17 08:09:58,702 INFO L425 stractBuchiCegarLoop]: Abstraction has 39 states and 47 transitions. [2024-11-17 08:09:58,702 INFO L332 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2024-11-17 08:09:58,702 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 39 states and 47 transitions. [2024-11-17 08:09:58,702 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 3 [2024-11-17 08:09:58,702 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-17 08:09:58,702 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-17 08:09:58,703 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1] [2024-11-17 08:09:58,703 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-17 08:09:58,703 INFO L745 eck$LassoCheckResult]: Stem: 6925#ULTIMATE.startENTRY assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; 6926#ULTIMATE.init_returnLabel#1 assume true;assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet205#1, main_#t~malloc206#1.base, main_#t~malloc206#1.offset, main_#t~nondet207#1, main_#t~mem208#1, main_#t~post209#1, main_#t~mem210#1, main_#t~post211#1, main_#t~post212#1, main_~i~0#1, main_~j~0#1, main_~length~0#1, main_~arr~0#1.base, main_~arr~0#1.offset;havoc main_~i~0#1;havoc main_~j~0#1;havoc main_#t~nondet205#1;main_~length~0#1 := main_#t~nondet205#1;havoc main_#t~nondet205#1; 6937#L367 assume !(main_~length~0#1 < 1); 6927#L368-1 call main_#t~malloc206#1.base, main_#t~malloc206#1.offset := #Ultimate.allocOnStack(4 * main_~length~0#1 % 18446744073709551616);main_~arr~0#1.base, main_~arr~0#1.offset := main_#t~malloc206#1.base, main_#t~malloc206#1.offset; 6928#L369-1 assume !(main_~arr~0#1.base == 0 && main_~arr~0#1.offset == 0);main_~i~0#1 := 0; 6929#L370 assume true; 6930#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6940#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6941#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6931#L370 assume true; 6932#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6943#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6933#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6934#L370 assume true; 6963#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6962#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6961#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6960#L370 assume true; 6959#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6958#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6957#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6956#L370 assume true; 6955#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6954#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6953#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6952#L370 assume true; 6951#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6950#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6949#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6948#L370 assume true; 6945#L370-2 assume !!(main_~i~0#1 < main_~length~0#1);havoc main_#t~nondet207#1;call write~int#0(main_#t~nondet207#1, main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4);havoc main_#t~nondet207#1;call main_#t~mem208#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~i~0#1, 4); 6947#L372 assume !(main_#t~mem208#1 > 0);havoc main_#t~mem208#1; 6946#L370-1 main_#t~post209#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post209#1;havoc main_#t~post209#1; 6944#L370 assume true; 6942#L370-2 assume !(main_~i~0#1 < main_~length~0#1); 6935#L376 main_~j~0#1 := 0; 6936#L377 [2024-11-17 08:09:58,703 INFO L747 eck$LassoCheckResult]: Loop: 6936#L377 assume true; 6939#L377-1 assume !!(0 <= main_~j~0#1 && main_~j~0#1 < main_~length~0#1);call main_#t~mem210#1 := read~int#0(main_~arr~0#1.base, main_~arr~0#1.offset + 4 * main_~j~0#1, 4); 6938#L378 assume !(main_#t~mem210#1 > 0);havoc main_#t~mem210#1;main_#t~post212#1 := main_~j~0#1;main_~j~0#1 := 1 + main_#t~post212#1;havoc main_#t~post212#1; 6936#L377 [2024-11-17 08:09:58,703 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:58,703 INFO L85 PathProgramCache]: Analyzing trace with hash -76590744, now seen corresponding path program 2 times [2024-11-17 08:09:58,703 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:58,704 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2090105479] [2024-11-17 08:09:58,704 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:58,704 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:58,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:58,711 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:58,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:58,716 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:58,717 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:58,717 INFO L85 PathProgramCache]: Analyzing trace with hash 39685, now seen corresponding path program 1 times [2024-11-17 08:09:58,717 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:58,717 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [952911543] [2024-11-17 08:09:58,717 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:58,717 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:58,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:58,719 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:58,720 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:58,721 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:09:58,721 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:09:58,721 INFO L85 PathProgramCache]: Analyzing trace with hash -1087210434, now seen corresponding path program 13 times [2024-11-17 08:09:58,721 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-17 08:09:58,721 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1273093023] [2024-11-17 08:09:58,722 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-17 08:09:58,722 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-17 08:09:58,728 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:58,729 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-17 08:09:58,732 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-17 08:09:58,735 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-17 08:10:00,300 INFO L204 LassoAnalysis]: Preferences: [2024-11-17 08:10:00,300 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-17 08:10:00,300 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-17 08:10:00,300 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-17 08:10:00,300 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-17 08:10:00,300 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,300 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-17 08:10:00,300 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-17 08:10:00,301 INFO L132 ssoRankerPreferences]: Filename of dumped script: array13_alloca.i_Iteration23_Lasso [2024-11-17 08:10:00,301 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-17 08:10:00,301 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-17 08:10:00,302 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,304 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,305 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,306 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,308 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,309 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,310 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,313 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,315 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,316 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,462 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-17 08:10:00,578 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-17 08:10:00,578 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-17 08:10:00,578 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,578 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,580 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,581 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Waiting until timeout for monitored process [2024-11-17 08:10:00,582 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:10:00,592 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:10:00,592 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:10:00,592 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:10:00,592 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:10:00,592 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:10:00,593 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:10:00,593 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:10:00,594 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:10:00,604 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Ended with exit code 0 [2024-11-17 08:10:00,604 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,605 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,606 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,607 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (27)] Waiting until timeout for monitored process [2024-11-17 08:10:00,608 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:10:00,618 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:10:00,619 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:10:00,619 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:10:00,619 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:10:00,619 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:10:00,619 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:10:00,619 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:10:00,620 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:10:00,630 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-17 08:10:00,631 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,631 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,632 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,633 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (28)] Waiting until timeout for monitored process [2024-11-17 08:10:00,635 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:10:00,644 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:10:00,645 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:10:00,645 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:10:00,645 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:10:00,645 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:10:00,645 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:10:00,645 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:10:00,646 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:10:00,657 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-17 08:10:00,657 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,657 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,659 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,660 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Waiting until timeout for monitored process [2024-11-17 08:10:00,661 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:10:00,671 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:10:00,671 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:10:00,671 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:10:00,671 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:10:00,671 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:10:00,672 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:10:00,672 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:10:00,673 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:10:00,684 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (29)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:00,685 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,685 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,687 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,688 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (30)] Waiting until timeout for monitored process [2024-11-17 08:10:00,689 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:10:00,698 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:10:00,699 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:10:00,699 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:10:00,699 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:10:00,699 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:10:00,699 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:10:00,699 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:10:00,700 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:10:00,712 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-17 08:10:00,713 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,713 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,714 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,715 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (31)] Waiting until timeout for monitored process [2024-11-17 08:10:00,717 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:10:00,727 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:10:00,727 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:10:00,727 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:10:00,727 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:10:00,727 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:10:00,728 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:10:00,728 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:10:00,729 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:10:00,739 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-17 08:10:00,741 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,741 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,743 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,744 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Waiting until timeout for monitored process [2024-11-17 08:10:00,745 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:10:00,755 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:10:00,755 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:10:00,755 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:10:00,755 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:10:00,755 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:10:00,755 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:10:00,756 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:10:00,756 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:10:00,767 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Ended with exit code 0 [2024-11-17 08:10:00,768 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,768 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,769 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,770 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Waiting until timeout for monitored process [2024-11-17 08:10:00,771 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:10:00,781 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:10:00,781 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:10:00,781 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:10:00,781 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:10:00,781 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:10:00,782 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:10:00,782 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:10:00,783 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:10:00,793 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:00,794 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,794 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,795 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,797 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Waiting until timeout for monitored process [2024-11-17 08:10:00,798 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:10:00,808 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:10:00,808 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-17 08:10:00,808 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:10:00,808 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:10:00,808 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:10:00,808 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-17 08:10:00,808 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-17 08:10:00,809 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-17 08:10:00,820 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Ended with exit code 0 [2024-11-17 08:10:00,820 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,821 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,822 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,823 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Waiting until timeout for monitored process [2024-11-17 08:10:00,824 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-17 08:10:00,834 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-17 08:10:00,834 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-17 08:10:00,834 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-17 08:10:00,834 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-17 08:10:00,837 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-17 08:10:00,838 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-17 08:10:00,844 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-17 08:10:00,863 INFO L443 ModelExtractionUtils]: Simplification made 12 calls to the SMT solver. [2024-11-17 08:10:00,863 INFO L444 ModelExtractionUtils]: 7 out of 19 variables were initially zero. Simplification set additionally 9 variables to zero. [2024-11-17 08:10:00,863 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-17 08:10:00,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-17 08:10:00,865 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-17 08:10:00,866 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Waiting until timeout for monitored process [2024-11-17 08:10:00,866 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-17 08:10:00,877 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-17 08:10:00,878 INFO L474 LassoAnalysis]: Proved termination. [2024-11-17 08:10:00,878 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_main_~length~0#1, ULTIMATE.start_main_~j~0#1) = 1*ULTIMATE.start_main_~length~0#1 - 1*ULTIMATE.start_main_~j~0#1 Supporting invariants [] [2024-11-17 08:10:00,889 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:00,896 INFO L156 tatePredicateManager]: 4 out of 4 supporting invariants were superfluous and have been removed [2024-11-17 08:10:00,905 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-17 08:10:00,923 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:10:00,924 INFO L255 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-17 08:10:00,924 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:10:00,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-17 08:10:00,968 INFO L255 TraceCheckSpWp]: Trace formula consists of 14 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-17 08:10:00,969 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-17 08:10:00,980 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-17 08:10:00,981 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-17 08:10:00,981 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 39 states and 47 transitions. cyclomatic complexity: 10 Second operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:10:00,994 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 39 states and 47 transitions. cyclomatic complexity: 10. Second operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 42 states and 51 transitions. Complement of second has 6 states. [2024-11-17 08:10:00,994 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-17 08:10:00,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-17 08:10:00,994 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 15 transitions. [2024-11-17 08:10:00,995 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 15 transitions. Stem has 36 letters. Loop has 3 letters. [2024-11-17 08:10:00,995 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:10:00,995 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 15 transitions. Stem has 39 letters. Loop has 3 letters. [2024-11-17 08:10:00,995 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:10:00,995 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 15 transitions. Stem has 36 letters. Loop has 6 letters. [2024-11-17 08:10:00,995 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-17 08:10:00,995 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 42 states and 51 transitions. [2024-11-17 08:10:00,995 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2024-11-17 08:10:00,995 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 42 states to 0 states and 0 transitions. [2024-11-17 08:10:00,996 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2024-11-17 08:10:00,996 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2024-11-17 08:10:00,996 INFO L73 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2024-11-17 08:10:00,996 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-11-17 08:10:00,996 INFO L218 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2024-11-17 08:10:00,996 INFO L240 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2024-11-17 08:10:00,996 INFO L425 stractBuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2024-11-17 08:10:00,996 INFO L332 stractBuchiCegarLoop]: ======== Iteration 24 ============ [2024-11-17 08:10:00,996 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2024-11-17 08:10:00,996 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2024-11-17 08:10:00,996 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2024-11-17 08:10:01,001 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 17.11 08:10:01 BoogieIcfgContainer [2024-11-17 08:10:01,001 INFO L131 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2024-11-17 08:10:01,002 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2024-11-17 08:10:01,002 INFO L270 PluginConnector]: Initializing Witness Printer... [2024-11-17 08:10:01,002 INFO L274 PluginConnector]: Witness Printer initialized [2024-11-17 08:10:01,002 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 17.11 08:09:38" (3/4) ... [2024-11-17 08:10:01,004 INFO L146 WitnessPrinter]: No result that supports witness generation found [2024-11-17 08:10:01,005 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2024-11-17 08:10:01,005 INFO L158 Benchmark]: Toolchain (without parser) took 23453.42ms. Allocated memory was 184.5MB in the beginning and 459.3MB in the end (delta: 274.7MB). Free memory was 149.5MB in the beginning and 195.6MB in the end (delta: -46.1MB). Peak memory consumption was 228.7MB. Max. memory is 16.1GB. [2024-11-17 08:10:01,005 INFO L158 Benchmark]: CDTParser took 0.53ms. Allocated memory is still 184.5MB. Free memory is still 147.1MB. There was no memory consumed. Max. memory is 16.1GB. [2024-11-17 08:10:01,005 INFO L158 Benchmark]: CACSL2BoogieTranslator took 336.22ms. Allocated memory is still 184.5MB. Free memory was 149.3MB in the beginning and 136.4MB in the end (delta: 13.0MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. [2024-11-17 08:10:01,005 INFO L158 Benchmark]: Boogie Procedure Inliner took 43.25ms. Allocated memory is still 184.5MB. Free memory was 136.4MB in the beginning and 134.3MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-11-17 08:10:01,006 INFO L158 Benchmark]: Boogie Preprocessor took 44.36ms. Allocated memory is still 184.5MB. Free memory was 134.3MB in the beginning and 133.1MB in the end (delta: 1.1MB). There was no memory consumed. Max. memory is 16.1GB. [2024-11-17 08:10:01,006 INFO L158 Benchmark]: IcfgBuilder took 351.10ms. Allocated memory is still 184.5MB. Free memory was 133.1MB in the beginning and 145.0MB in the end (delta: -11.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2024-11-17 08:10:01,006 INFO L158 Benchmark]: BuchiAutomizer took 22667.87ms. Allocated memory was 184.5MB in the beginning and 459.3MB in the end (delta: 274.7MB). Free memory was 145.0MB in the beginning and 195.6MB in the end (delta: -50.6MB). Peak memory consumption was 226.2MB. Max. memory is 16.1GB. [2024-11-17 08:10:01,006 INFO L158 Benchmark]: Witness Printer took 2.98ms. Allocated memory is still 459.3MB. Free memory is still 195.6MB. There was no memory consumed. Max. memory is 16.1GB. [2024-11-17 08:10:01,007 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.53ms. Allocated memory is still 184.5MB. Free memory is still 147.1MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 336.22ms. Allocated memory is still 184.5MB. Free memory was 149.3MB in the beginning and 136.4MB in the end (delta: 13.0MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 43.25ms. Allocated memory is still 184.5MB. Free memory was 136.4MB in the beginning and 134.3MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 44.36ms. Allocated memory is still 184.5MB. Free memory was 134.3MB in the beginning and 133.1MB in the end (delta: 1.1MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 351.10ms. Allocated memory is still 184.5MB. Free memory was 133.1MB in the beginning and 145.0MB in the end (delta: -11.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * BuchiAutomizer took 22667.87ms. Allocated memory was 184.5MB in the beginning and 459.3MB in the end (delta: 274.7MB). Free memory was 145.0MB in the beginning and 195.6MB in the end (delta: -50.6MB). Peak memory consumption was 226.2MB. Max. memory is 16.1GB. * Witness Printer took 2.98ms. Allocated memory is still 459.3MB. Free memory is still 195.6MB. There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Unknown variable: #length - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Unknown variable: ~arr~0!offset * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Constructed decomposition of program Your program was decomposed into 23 terminating modules (21 trivial, 2 deterministic, 0 nondeterministic). One deterministic module has affine ranking function null and consists of 5 locations. One deterministic module has affine ranking function (((long) -1 * j) + length) and consists of 4 locations. 21 modules have a trivial ranking function, the largest among these consists of 49 locations. - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 22.6s and 24 iterations. TraceHistogramMax:8. Analysis of lassos took 17.3s. Construction of modules took 2.6s. Büchi inclusion checks took 2.5s. Highest rank in rank-based complementation 3. Minimization of det autom 1. Minimization of nondet autom 22. Automata minimization 0.1s AutomataMinimizationTime, 22 MinimizatonAttempts, 250 StatesRemovedByMinimization, 20 NontrivialMinimizations. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had -1 states and ocurred in iteration -1. Nontrivial modules had stage [2, 0, 0, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 916 SdHoareTripleChecker+Valid, 3.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 914 mSDsluCounter, 3710 SdHoareTripleChecker+Invalid, 2.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 3344 mSDsCounter, 220 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 6241 IncrementalHoareTripleChecker+Invalid, 6461 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 220 mSolverCounterUnsat, 366 mSDtfsCounter, 6241 mSolverCounterSat, 0.1s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown LassoAnalysisResults: nont0 unkn0 SFLI0 SFLT0 conc19 concLT0 SILN0 SILU2 SILI0 SILT0 lasso2 LassoPreprocessingBenchmarks: Lassos: inital145 mio100 ax100 hnf100 lsp100 ukn69 mio100 lsp52 div137 bol100 ite100 ukn100 eq156 hnf92 smp86 dnf100 smp100 tf100 neg100 sie100 LassoTerminationAnalysisBenchmarks: ConstraintsSatisfiability: unsat Degree: 0 Time: 23ms VariablesStem: 2 VariablesLoop: 0 DisjunctsStem: 1 DisjunctsLoop: 1 SupportingInvariants: 2 MotzkinApplications: 6 LassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s InitialAbstractionConstructionTime: 0.0s - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating RESULT: Ultimate proved your program to be correct! [2024-11-17 08:10:01,024 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:01,227 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Ended with exit code 0 [2024-11-17 08:10:01,427 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:01,631 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:01,831 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:02,031 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Ended with exit code 0 [2024-11-17 08:10:02,231 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Ended with exit code 0 [2024-11-17 08:10:02,431 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:02,638 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Ended with exit code 0 [2024-11-17 08:10:02,835 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Ended with exit code 0 [2024-11-17 08:10:03,036 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:03,238 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:03,443 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:03,643 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Ended with exit code 0 [2024-11-17 08:10:03,844 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:04,043 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:04,244 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:04,443 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:04,644 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2024-11-17 08:10:04,848 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2024-11-17 08:10:05,048 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2024-11-17 08:10:05,255 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE