./Ultimate.py --spec ../sv-benchmarks/c/properties/termination.prp --file ../sv-benchmarks/c/reducercommutativity/rangesum.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for termination Using default analysis Version 3061b6dc 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/reducercommutativity/rangesum.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(F end) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 4dc91bf2fc8981aab63c1ee768384f1c8f580edfe4618d65089a78f799b6ddb8 --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.dk.eval-assert-order-craig-3061b6d-m [2024-11-19 14:23:47,187 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-19 14:23:47,235 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2024-11-19 14:23:47,239 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-19 14:23:47,240 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-19 14:23:47,256 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-19 14:23:47,257 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-19 14:23:47,257 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-19 14:23:47,258 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-19 14:23:47,259 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-19 14:23:47,259 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-19 14:23:47,259 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-19 14:23:47,260 INFO L153 SettingsManager]: * Use SBE=true [2024-11-19 14:23:47,260 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-11-19 14:23:47,261 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-11-19 14:23:47,262 INFO L153 SettingsManager]: * Use old map elimination=false [2024-11-19 14:23:47,262 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-11-19 14:23:47,262 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-11-19 14:23:47,262 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-11-19 14:23:47,262 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-19 14:23:47,263 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-11-19 14:23:47,263 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-19 14:23:47,265 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-19 14:23:47,266 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-19 14:23:47,266 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-19 14:23:47,266 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-11-19 14:23:47,266 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-11-19 14:23:47,266 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-11-19 14:23:47,267 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-19 14:23:47,267 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-11-19 14:23:47,267 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-19 14:23:47,267 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-19 14:23:47,267 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-11-19 14:23:47,267 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-19 14:23:47,268 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-19 14:23:47,268 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-19 14:23:47,268 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-19 14:23:47,268 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-19 14:23:47,268 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-11-19 14:23:47,268 INFO L153 SettingsManager]: * TransformationType=MODULO_NEIGHBOR WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(F end) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 4dc91bf2fc8981aab63c1ee768384f1c8f580edfe4618d65089a78f799b6ddb8 [2024-11-19 14:23:47,456 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-19 14:23:47,475 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-19 14:23:47,477 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-19 14:23:47,477 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-19 14:23:47,478 INFO L274 PluginConnector]: CDTParser initialized [2024-11-19 14:23:47,479 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/reducercommutativity/rangesum.i [2024-11-19 14:23:48,662 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-19 14:23:48,798 INFO L384 CDTParser]: Found 1 translation units. [2024-11-19 14:23:48,798 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/reducercommutativity/rangesum.i [2024-11-19 14:23:48,804 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5e0aa0771/7d3ba7fc019d4850a598f3c52120f55e/FLAG3e3e33bb7 [2024-11-19 14:23:48,816 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5e0aa0771/7d3ba7fc019d4850a598f3c52120f55e [2024-11-19 14:23:48,818 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-19 14:23:48,819 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-19 14:23:48,820 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-19 14:23:48,820 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-19 14:23:48,824 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-19 14:23:48,824 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 02:23:48" (1/1) ... [2024-11-19 14:23:48,825 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5113aa09 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:48, skipping insertion in model container [2024-11-19 14:23:48,825 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 02:23:48" (1/1) ... [2024-11-19 14:23:48,839 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-19 14:23:48,982 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-19 14:23:48,991 INFO L200 MainTranslator]: Completed pre-run [2024-11-19 14:23:49,009 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-19 14:23:49,023 INFO L204 MainTranslator]: Completed translation [2024-11-19 14:23:49,024 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49 WrapperNode [2024-11-19 14:23:49,024 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-19 14:23:49,024 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-19 14:23:49,025 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-19 14:23:49,025 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-19 14:23:49,029 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,040 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,078 INFO L138 Inliner]: procedures = 17, calls = 23, calls flagged for inlining = 7, calls inlined = 7, statements flattened = 142 [2024-11-19 14:23:49,079 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-19 14:23:49,079 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-19 14:23:49,079 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-19 14:23:49,080 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-19 14:23:49,092 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,093 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,095 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,106 INFO L175 MemorySlicer]: Split 14 memory accesses to 2 slices as follows [2, 12]. 86 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2, 0]. The 5 writes are split as follows [0, 5]. [2024-11-19 14:23:49,107 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,107 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,111 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,116 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,117 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,118 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,124 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-19 14:23:49,124 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-19 14:23:49,125 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-19 14:23:49,125 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-19 14:23:49,125 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (1/1) ... [2024-11-19 14:23:49,132 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:49,147 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:49,158 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-19 14:23:49,160 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-19 14:23:49,192 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-19 14:23:49,192 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-19 14:23:49,192 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-11-19 14:23:49,192 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-11-19 14:23:49,193 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-11-19 14:23:49,193 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-11-19 14:23:49,193 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-19 14:23:49,193 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-19 14:23:49,193 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-11-19 14:23:49,193 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-11-19 14:23:49,193 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-11-19 14:23:49,247 INFO L238 CfgBuilder]: Building ICFG [2024-11-19 14:23:49,249 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-19 14:23:49,422 INFO L? ?]: Removed 35 outVars from TransFormulas that were not future-live. [2024-11-19 14:23:49,423 INFO L287 CfgBuilder]: Performing block encoding [2024-11-19 14:23:49,431 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-19 14:23:49,436 INFO L316 CfgBuilder]: Removed 5 assume(true) statements. [2024-11-19 14:23:49,436 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 02:23:49 BoogieIcfgContainer [2024-11-19 14:23:49,436 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-19 14:23:49,437 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-11-19 14:23:49,437 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-11-19 14:23:49,440 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-11-19 14:23:49,440 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-19 14:23:49,440 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 19.11 02:23:48" (1/3) ... [2024-11-19 14:23:49,441 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@20611cc8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 19.11 02:23:49, skipping insertion in model container [2024-11-19 14:23:49,441 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-19 14:23:49,441 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 02:23:49" (2/3) ... [2024-11-19 14:23:49,441 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@20611cc8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 19.11 02:23:49, skipping insertion in model container [2024-11-19 14:23:49,442 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-19 14:23:49,442 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 02:23:49" (3/3) ... [2024-11-19 14:23:49,442 INFO L332 chiAutomizerObserver]: Analyzing ICFG rangesum.i [2024-11-19 14:23:49,478 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-11-19 14:23:49,478 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-11-19 14:23:49,479 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-11-19 14:23:49,479 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-11-19 14:23:49,479 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-11-19 14:23:49,479 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-11-19 14:23:49,479 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-11-19 14:23:49,479 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-11-19 14:23:49,482 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 32 states, 31 states have (on average 1.6129032258064515) internal successors, (50), 31 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-19 14:23:49,494 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-19 14:23:49,494 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:49,494 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:49,499 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-11-19 14:23:49,499 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-19 14:23:49,499 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-11-19 14:23:49,499 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand has 32 states, 31 states have (on average 1.6129032258064515) internal successors, (50), 31 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-19 14:23:49,503 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-19 14:23:49,503 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:49,504 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:49,504 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-11-19 14:23:49,504 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-19 14:23:49,510 INFO L745 eck$LassoCheckResult]: Stem: 30#$Ultimate##0true assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 12#L-1true assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 9#L44true assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 15#L18-3true [2024-11-19 14:23:49,510 INFO L747 eck$LassoCheckResult]: Loop: 15#L18-3true assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14#L18-2true init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 15#L18-3true [2024-11-19 14:23:49,515 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:49,522 INFO L85 PathProgramCache]: Analyzing trace with hash 29858, now seen corresponding path program 1 times [2024-11-19 14:23:49,529 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:49,529 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [253531102] [2024-11-19 14:23:49,529 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:49,530 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:49,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:49,614 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:49,631 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:49,650 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:49,652 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:49,652 INFO L85 PathProgramCache]: Analyzing trace with hash 1379, now seen corresponding path program 1 times [2024-11-19 14:23:49,652 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:49,652 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2109458493] [2024-11-19 14:23:49,653 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:49,653 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:49,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:49,669 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:49,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:49,677 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:49,679 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:49,679 INFO L85 PathProgramCache]: Analyzing trace with hash 28693956, now seen corresponding path program 1 times [2024-11-19 14:23:49,679 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:49,680 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [918012419] [2024-11-19 14:23:49,680 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:49,680 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:49,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:49,710 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:49,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:49,734 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:50,033 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:23:50,034 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:23:50,034 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:23:50,034 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:23:50,034 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-19 14:23:50,034 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,035 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:23:50,035 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:23:50,035 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration1_Lasso [2024-11-19 14:23:50,035 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:23:50,036 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:23:50,050 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,057 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,059 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,062 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,064 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,066 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,068 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,070 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,072 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,075 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,077 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,081 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,093 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,096 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,098 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,278 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,281 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,283 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,284 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,287 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:50,520 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:23:50,536 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-19 14:23:50,537 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,537 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,539 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-19 14:23:50,545 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-19 14:23:50,546 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:50,563 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,563 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,563 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,564 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,564 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,565 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,565 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,566 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,582 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Ended with exit code 0 [2024-11-19 14:23:50,593 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,593 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,599 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-19 14:23:50,604 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-19 14:23:50,605 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:50,618 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,619 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,619 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,619 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,619 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,619 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,620 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,621 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,633 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:50,633 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,633 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,635 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-19 14:23:50,636 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-19 14:23:50,637 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-19 14:23:50,647 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,648 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,648 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,648 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,648 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,649 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,650 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,651 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,661 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-19 14:23:50,661 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,662 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,663 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-19 14:23:50,664 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-19 14:23:50,666 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-19 14:23:50,676 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,676 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,676 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,676 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,676 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,677 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,677 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,678 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,688 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Ended with exit code 0 [2024-11-19 14:23:50,689 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,689 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,690 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,691 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2024-11-19 14:23:50,692 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:50,701 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,702 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,702 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,702 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,702 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,702 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,702 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,703 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,714 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2024-11-19 14:23:50,715 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,715 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,716 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,717 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2024-11-19 14:23:50,719 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:50,729 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,729 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,729 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,729 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,730 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,730 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,730 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,731 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,741 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:50,742 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,742 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,743 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,744 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2024-11-19 14:23:50,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-19 14:23:50,755 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,755 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,755 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,755 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,755 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,756 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,756 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,757 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,768 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Ended with exit code 0 [2024-11-19 14:23:50,768 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,769 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,770 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,771 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2024-11-19 14:23:50,772 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:50,782 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,782 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,782 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,782 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,783 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,783 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,783 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,784 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,794 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Ended with exit code 0 [2024-11-19 14:23:50,795 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,795 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,797 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,797 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Waiting until timeout for monitored process [2024-11-19 14:23:50,799 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-19 14:23:50,809 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,809 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,809 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,809 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,809 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,810 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,810 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,811 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,821 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:50,822 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,822 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,823 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,824 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Waiting until timeout for monitored process [2024-11-19 14:23:50,826 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-19 14:23:50,835 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,835 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,835 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,835 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,835 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,836 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,836 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,837 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,847 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:50,847 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,848 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,848 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,849 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Waiting until timeout for monitored process [2024-11-19 14:23:50,850 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:50,859 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,859 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,859 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,859 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,861 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:50,861 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:50,864 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,875 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:50,876 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,876 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,878 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,879 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Waiting until timeout for monitored process [2024-11-19 14:23:50,880 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-19 14:23:50,890 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,890 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,890 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,890 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,892 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:50,892 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:50,894 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,904 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:50,904 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,905 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,905 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,906 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Waiting until timeout for monitored process [2024-11-19 14:23:50,907 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:50,916 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,916 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,916 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,916 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,918 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:50,918 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:50,920 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,931 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Ended with exit code 0 [2024-11-19 14:23:50,931 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,931 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,933 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,933 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Waiting until timeout for monitored process [2024-11-19 14:23:50,934 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:50,944 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,944 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,944 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,944 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,944 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,945 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,946 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,947 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,958 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:50,959 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,959 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,960 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,961 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Waiting until timeout for monitored process [2024-11-19 14:23:50,962 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:50,974 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:50,974 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:50,975 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:50,975 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:50,975 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:50,975 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:50,975 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:50,976 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:50,986 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Ended with exit code 0 [2024-11-19 14:23:50,987 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:50,987 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:50,988 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:50,989 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Waiting until timeout for monitored process [2024-11-19 14:23:50,990 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-19 14:23:51,000 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:51,000 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:51,000 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:51,000 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:51,002 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:51,002 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:51,005 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:51,016 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Ended with exit code 0 [2024-11-19 14:23:51,017 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,017 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:51,018 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:51,019 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Waiting until timeout for monitored process [2024-11-19 14:23:51,022 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:51,031 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:51,031 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:51,031 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:51,032 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:51,037 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:51,037 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:51,040 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:51,050 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Ended with exit code 0 [2024-11-19 14:23:51,051 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,051 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:51,052 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:51,052 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Waiting until timeout for monitored process [2024-11-19 14:23:51,054 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:51,063 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:51,063 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:51,063 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:51,063 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:51,063 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:51,064 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:51,064 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:51,065 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:51,074 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:51,074 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,075 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:51,075 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:51,076 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Waiting until timeout for monitored process [2024-11-19 14:23:51,077 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:51,086 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:51,087 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:51,087 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:51,087 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:51,088 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:51,088 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:51,091 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:51,100 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:51,101 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,101 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:51,102 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:51,102 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Waiting until timeout for monitored process [2024-11-19 14:23:51,104 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:51,113 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:51,114 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:51,114 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:51,114 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:51,120 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:51,120 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:51,127 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-19 14:23:51,155 INFO L443 ModelExtractionUtils]: Simplification made 12 calls to the SMT solver. [2024-11-19 14:23:51,155 INFO L444 ModelExtractionUtils]: 1 out of 19 variables were initially zero. Simplification set additionally 14 variables to zero. [2024-11-19 14:23:51,157 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,157 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:51,176 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:51,178 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Waiting until timeout for monitored process [2024-11-19 14:23:51,179 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-19 14:23:51,190 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-19 14:23:51,191 INFO L474 LassoAnalysis]: Proved termination. [2024-11-19 14:23:51,191 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_init_nondet_~x#1.offset, v_rep(select #length ULTIMATE.start_init_nondet_~x#1.base)_1, ULTIMATE.start_init_nondet_~i~0#1) = -1*ULTIMATE.start_init_nondet_~x#1.offset + 1*v_rep(select #length ULTIMATE.start_init_nondet_~x#1.base)_1 - 4*ULTIMATE.start_init_nondet_~i~0#1 Supporting invariants [] [2024-11-19 14:23:51,202 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Ended with exit code 0 [2024-11-19 14:23:51,224 INFO L156 tatePredicateManager]: 8 out of 8 supporting invariants were superfluous and have been removed [2024-11-19 14:23:51,229 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2024-11-19 14:23:51,233 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2024-11-19 14:23:51,235 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: ~x!offset [2024-11-19 14:23:51,250 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:51,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:51,270 INFO L255 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-19 14:23:51,270 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:51,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:51,286 INFO L255 TraceCheckSpWp]: Trace formula consists of 13 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-19 14:23:51,286 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:51,300 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-19 14:23:51,320 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-19 14:23:51,321 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand has 32 states, 31 states have (on average 1.6129032258064515) internal successors, (50), 31 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) Second operand has 3 states, 3 states have (on average 1.6666666666666667) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:51,356 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand has 32 states, 31 states have (on average 1.6129032258064515) internal successors, (50), 31 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). Second operand has 3 states, 3 states have (on average 1.6666666666666667) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Result 65 states and 100 transitions. Complement of second has 6 states. [2024-11-19 14:23:51,361 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 1 non-accepting loop states 1 accepting loop states [2024-11-19 14:23:51,364 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 1.6666666666666667) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:51,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2024-11-19 14:23:51,367 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 52 transitions. Stem has 3 letters. Loop has 2 letters. [2024-11-19 14:23:51,368 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:51,368 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 52 transitions. Stem has 5 letters. Loop has 2 letters. [2024-11-19 14:23:51,368 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:51,368 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 52 transitions. Stem has 3 letters. Loop has 4 letters. [2024-11-19 14:23:51,369 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:51,369 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 65 states and 100 transitions. [2024-11-19 14:23:51,373 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-19 14:23:51,375 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 65 states to 23 states and 36 transitions. [2024-11-19 14:23:51,375 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 20 [2024-11-19 14:23:51,376 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 21 [2024-11-19 14:23:51,376 INFO L73 IsDeterministic]: Start isDeterministic. Operand 23 states and 36 transitions. [2024-11-19 14:23:51,376 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-11-19 14:23:51,376 INFO L218 hiAutomatonCegarLoop]: Abstraction has 23 states and 36 transitions. [2024-11-19 14:23:51,387 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states and 36 transitions. [2024-11-19 14:23:51,391 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2024-11-19 14:23:51,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 1.565217391304348) internal successors, (36), 22 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:51,392 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 36 transitions. [2024-11-19 14:23:51,393 INFO L240 hiAutomatonCegarLoop]: Abstraction has 23 states and 36 transitions. [2024-11-19 14:23:51,393 INFO L425 stractBuchiCegarLoop]: Abstraction has 23 states and 36 transitions. [2024-11-19 14:23:51,393 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-11-19 14:23:51,393 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 23 states and 36 transitions. [2024-11-19 14:23:51,394 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-19 14:23:51,394 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:51,394 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:51,394 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2024-11-19 14:23:51,395 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:51,395 INFO L745 eck$LassoCheckResult]: Stem: 190#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 185#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 179#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 180#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 168#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 169#L29-3 [2024-11-19 14:23:51,395 INFO L747 eck$LassoCheckResult]: Loop: 169#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 174#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 175#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 169#L29-3 [2024-11-19 14:23:51,396 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:51,396 INFO L85 PathProgramCache]: Analyzing trace with hash 28693898, now seen corresponding path program 1 times [2024-11-19 14:23:51,396 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:51,396 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [800557456] [2024-11-19 14:23:51,396 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:51,396 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:51,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:51,454 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-19 14:23:51,454 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:23:51,455 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [800557456] [2024-11-19 14:23:51,455 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [800557456] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:23:51,455 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:23:51,455 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-19 14:23:51,455 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1985032530] [2024-11-19 14:23:51,458 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:23:51,459 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:23:51,460 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:51,460 INFO L85 PathProgramCache]: Analyzing trace with hash 56764, now seen corresponding path program 1 times [2024-11-19 14:23:51,460 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:51,460 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1587990179] [2024-11-19 14:23:51,460 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:51,460 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:51,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:51,471 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:51,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:51,478 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:51,514 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:23:51,514 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:23:51,514 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:23:51,514 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:23:51,514 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-19 14:23:51,514 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,514 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:23:51,514 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:23:51,515 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration2_Loop [2024-11-19 14:23:51,515 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:23:51,515 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:23:51,515 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:51,521 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:51,554 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:23:51,554 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-19 14:23:51,556 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,556 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:51,558 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:51,559 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Waiting until timeout for monitored process [2024-11-19 14:23:51,559 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-19 14:23:51,560 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:23:51,581 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:51,581 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,582 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:51,583 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:51,584 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Waiting until timeout for monitored process [2024-11-19 14:23:51,585 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-19 14:23:51,585 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:23:51,691 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-19 14:23:51,695 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:51,696 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:23:51,696 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:23:51,696 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:23:51,696 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:23:51,696 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-19 14:23:51,696 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,696 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:23:51,696 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:23:51,696 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration2_Loop [2024-11-19 14:23:51,696 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:23:51,696 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:23:51,697 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:51,704 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:51,741 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:23:51,741 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-19 14:23:51,741 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,741 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:51,745 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:51,748 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Waiting until timeout for monitored process [2024-11-19 14:23:51,748 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:51,758 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:51,758 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:51,758 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:51,758 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:51,758 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:51,760 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:51,760 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:51,762 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-19 14:23:51,766 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2024-11-19 14:23:51,766 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-19 14:23:51,766 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:51,766 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:51,768 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-19 14:23:51,769 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-19 14:23:51,770 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-19 14:23:51,771 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-19 14:23:51,771 INFO L474 LassoAnalysis]: Proved termination. [2024-11-19 14:23:51,771 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_rangesum_~i~1#1, ~N~0) = -4*ULTIMATE.start_rangesum_~i~1#1 + 3*~N~0 Supporting invariants [] [2024-11-19 14:23:51,781 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:51,782 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-19 14:23:51,797 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:51,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:51,811 INFO L255 TraceCheckSpWp]: Trace formula consists of 58 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-19 14:23:51,811 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:51,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:51,821 WARN L253 TraceCheckSpWp]: Trace formula consists of 6 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-19 14:23:51,821 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:51,879 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-19 14:23:51,879 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2024-11-19 14:23:51,879 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 23 states and 36 transitions. cyclomatic complexity: 18 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-19 14:23:51,911 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 23 states and 36 transitions. cyclomatic complexity: 18. 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) Result 45 states and 74 transitions. Complement of second has 10 states. [2024-11-19 14:23:51,911 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 6 states 1 stem states 3 non-accepting loop states 1 accepting loop states [2024-11-19 14:23:51,912 INFO L82 GeneralOperation]: Start removeUnreachable. 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-19 14:23:51,912 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2024-11-19 14:23:51,912 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 5 letters. Loop has 3 letters. [2024-11-19 14:23:51,912 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:51,913 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 8 letters. Loop has 3 letters. [2024-11-19 14:23:51,913 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:51,913 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 5 letters. Loop has 6 letters. [2024-11-19 14:23:51,913 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:51,913 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 45 states and 74 transitions. [2024-11-19 14:23:51,914 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-19 14:23:51,915 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 45 states to 31 states and 48 transitions. [2024-11-19 14:23:51,915 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2024-11-19 14:23:51,915 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 24 [2024-11-19 14:23:51,916 INFO L73 IsDeterministic]: Start isDeterministic. Operand 31 states and 48 transitions. [2024-11-19 14:23:51,916 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:51,916 INFO L218 hiAutomatonCegarLoop]: Abstraction has 31 states and 48 transitions. [2024-11-19 14:23:51,916 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states and 48 transitions. [2024-11-19 14:23:51,917 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 29. [2024-11-19 14:23:51,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.5517241379310345) internal successors, (45), 28 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:51,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 45 transitions. [2024-11-19 14:23:51,918 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 45 transitions. [2024-11-19 14:23:51,918 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:23:51,919 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-19 14:23:51,920 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-19 14:23:51,921 INFO L87 Difference]: Start difference. First operand 29 states and 45 transitions. Second operand has 3 states, 3 states have (on average 1.6666666666666667) internal successors, (5), 3 states have internal predecessors, (5), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:51,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:23:51,949 INFO L93 Difference]: Finished difference Result 30 states and 43 transitions. [2024-11-19 14:23:51,949 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 30 states and 43 transitions. [2024-11-19 14:23:51,950 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-19 14:23:51,950 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 30 states to 30 states and 43 transitions. [2024-11-19 14:23:51,950 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2024-11-19 14:23:51,951 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22 [2024-11-19 14:23:51,951 INFO L73 IsDeterministic]: Start isDeterministic. Operand 30 states and 43 transitions. [2024-11-19 14:23:51,951 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:51,951 INFO L218 hiAutomatonCegarLoop]: Abstraction has 30 states and 43 transitions. [2024-11-19 14:23:51,951 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states and 43 transitions. [2024-11-19 14:23:51,952 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 29. [2024-11-19 14:23:51,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.4482758620689655) internal successors, (42), 28 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-19 14:23:51,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 42 transitions. [2024-11-19 14:23:51,953 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 42 transitions. [2024-11-19 14:23:51,955 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-19 14:23:51,955 INFO L425 stractBuchiCegarLoop]: Abstraction has 29 states and 42 transitions. [2024-11-19 14:23:51,955 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-11-19 14:23:51,955 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 29 states and 42 transitions. [2024-11-19 14:23:51,956 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-19 14:23:51,956 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:51,956 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:51,956 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:23:51,956 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:51,956 INFO L745 eck$LassoCheckResult]: Stem: 373#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 366#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 362#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 363#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 371#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 372#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 346#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 347#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 350#L30 [2024-11-19 14:23:51,956 INFO L747 eck$LassoCheckResult]: Loop: 350#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 351#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 369#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 350#L30 [2024-11-19 14:23:51,957 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:51,957 INFO L85 PathProgramCache]: Analyzing trace with hash 123162479, now seen corresponding path program 1 times [2024-11-19 14:23:51,957 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:51,957 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1791588922] [2024-11-19 14:23:51,957 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:51,957 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:51,970 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:52,023 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:52,023 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:23:52,023 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1791588922] [2024-11-19 14:23:52,024 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1791588922] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:23:52,024 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [348938535] [2024-11-19 14:23:52,024 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:52,024 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:23:52,024 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:52,025 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:23:52,035 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2024-11-19 14:23:52,051 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:52,063 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:52,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:52,081 INFO L255 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-19 14:23:52,082 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:52,121 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:52,121 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:23:52,140 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:52,140 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [348938535] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:23:52,140 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:23:52,140 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 7 [2024-11-19 14:23:52,140 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1875923630] [2024-11-19 14:23:52,140 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:23:52,141 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:23:52,141 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:52,141 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 1 times [2024-11-19 14:23:52,141 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:52,141 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [906479704] [2024-11-19 14:23:52,141 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:52,141 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:52,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:52,149 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:52,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:52,160 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:52,236 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:23:52,237 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-11-19 14:23:52,237 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=22, Unknown=0, NotChecked=0, Total=42 [2024-11-19 14:23:52,237 INFO L87 Difference]: Start difference. First operand 29 states and 42 transitions. cyclomatic complexity: 19 Second operand has 7 states, 7 states have (on average 2.142857142857143) internal successors, (15), 7 states have internal predecessors, (15), 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-19 14:23:52,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:23:52,300 INFO L93 Difference]: Finished difference Result 32 states and 45 transitions. [2024-11-19 14:23:52,300 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32 states and 45 transitions. [2024-11-19 14:23:52,301 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-19 14:23:52,301 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32 states to 32 states and 45 transitions. [2024-11-19 14:23:52,301 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2024-11-19 14:23:52,301 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22 [2024-11-19 14:23:52,301 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32 states and 45 transitions. [2024-11-19 14:23:52,301 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:52,301 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32 states and 45 transitions. [2024-11-19 14:23:52,301 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states and 45 transitions. [2024-11-19 14:23:52,303 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 31. [2024-11-19 14:23:52,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 1.4193548387096775) internal successors, (44), 30 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-19 14:23:52,303 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 44 transitions. [2024-11-19 14:23:52,303 INFO L240 hiAutomatonCegarLoop]: Abstraction has 31 states and 44 transitions. [2024-11-19 14:23:52,304 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-19 14:23:52,304 INFO L425 stractBuchiCegarLoop]: Abstraction has 31 states and 44 transitions. [2024-11-19 14:23:52,304 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-11-19 14:23:52,304 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 44 transitions. [2024-11-19 14:23:52,305 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-19 14:23:52,305 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:52,305 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:52,305 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 1, 1, 1, 1, 1, 1] [2024-11-19 14:23:52,305 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:52,305 INFO L745 eck$LassoCheckResult]: Stem: 487#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 479#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 475#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 476#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 484#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 485#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 486#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 488#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 459#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 460#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 465#L30 [2024-11-19 14:23:52,305 INFO L747 eck$LassoCheckResult]: Loop: 465#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 466#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 482#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 465#L30 [2024-11-19 14:23:52,306 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:52,306 INFO L85 PathProgramCache]: Analyzing trace with hash -1898228851, now seen corresponding path program 2 times [2024-11-19 14:23:52,306 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:52,306 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [246111229] [2024-11-19 14:23:52,306 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:23:52,306 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:52,321 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-19 14:23:52,321 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:52,322 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:52,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:52,333 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:52,333 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:52,333 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 2 times [2024-11-19 14:23:52,334 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:52,334 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [998735198] [2024-11-19 14:23:52,334 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:23:52,334 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:52,339 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:23:52,340 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:52,340 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:52,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:52,347 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:52,348 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:52,348 INFO L85 PathProgramCache]: Analyzing trace with hash 1698716202, now seen corresponding path program 1 times [2024-11-19 14:23:52,349 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:52,349 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1604543384] [2024-11-19 14:23:52,349 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:52,349 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:52,362 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:52,439 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2024-11-19 14:23:52,439 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:23:52,439 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1604543384] [2024-11-19 14:23:52,439 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1604543384] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:23:52,439 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:23:52,439 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-19 14:23:52,440 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1488259521] [2024-11-19 14:23:52,440 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:23:52,501 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:23:52,501 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-19 14:23:52,501 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2024-11-19 14:23:52,502 INFO L87 Difference]: Start difference. First operand 31 states and 44 transitions. cyclomatic complexity: 19 Second operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 states have internal predecessors, (11), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:52,551 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:23:52,551 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2024-11-19 14:23:52,552 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 40 states and 51 transitions. [2024-11-19 14:23:52,552 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-19 14:23:52,552 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 40 states to 39 states and 50 transitions. [2024-11-19 14:23:52,552 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2024-11-19 14:23:52,553 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2024-11-19 14:23:52,553 INFO L73 IsDeterministic]: Start isDeterministic. Operand 39 states and 50 transitions. [2024-11-19 14:23:52,553 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:52,553 INFO L218 hiAutomatonCegarLoop]: Abstraction has 39 states and 50 transitions. [2024-11-19 14:23:52,553 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states and 50 transitions. [2024-11-19 14:23:52,554 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 36. [2024-11-19 14:23:52,554 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 36 states have (on average 1.3055555555555556) internal successors, (47), 35 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-19 14:23:52,554 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 47 transitions. [2024-11-19 14:23:52,555 INFO L240 hiAutomatonCegarLoop]: Abstraction has 36 states and 47 transitions. [2024-11-19 14:23:52,555 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-19 14:23:52,556 INFO L425 stractBuchiCegarLoop]: Abstraction has 36 states and 47 transitions. [2024-11-19 14:23:52,556 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-11-19 14:23:52,556 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 36 states and 47 transitions. [2024-11-19 14:23:52,556 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-19 14:23:52,556 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:52,556 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:52,556 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:23:52,556 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:52,557 INFO L745 eck$LassoCheckResult]: Stem: 567#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 559#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 554#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 555#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 563#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 564#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 565#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 571#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 539#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 540#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 545#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 546#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 570#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 543#L30 [2024-11-19 14:23:52,557 INFO L747 eck$LassoCheckResult]: Loop: 543#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 544#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 569#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 543#L30 [2024-11-19 14:23:52,557 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:52,557 INFO L85 PathProgramCache]: Analyzing trace with hash 1698718124, now seen corresponding path program 1 times [2024-11-19 14:23:52,557 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:52,557 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1533028391] [2024-11-19 14:23:52,557 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:52,557 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:52,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:52,572 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:52,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:52,584 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:52,584 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:52,584 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 3 times [2024-11-19 14:23:52,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:52,585 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [181687642] [2024-11-19 14:23:52,585 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:23:52,585 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:52,590 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-19 14:23:52,591 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:52,591 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:52,593 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:52,597 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:52,597 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:52,597 INFO L85 PathProgramCache]: Analyzing trace with hash -1087986773, now seen corresponding path program 1 times [2024-11-19 14:23:52,598 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:52,598 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [802650648] [2024-11-19 14:23:52,598 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:52,598 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:52,610 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:52,706 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 1 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:52,706 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:23:52,707 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [802650648] [2024-11-19 14:23:52,707 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [802650648] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:23:52,707 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1703091760] [2024-11-19 14:23:52,707 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:52,707 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:23:52,707 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:52,708 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:23:52,710 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2024-11-19 14:23:52,756 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:52,757 INFO L255 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 8 conjuncts are in the unsatisfiable core [2024-11-19 14:23:52,758 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:52,809 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:52,809 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:23:52,853 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:52,853 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1703091760] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:23:52,854 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:23:52,854 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8, 8] total 13 [2024-11-19 14:23:52,854 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [466889590] [2024-11-19 14:23:52,854 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:23:52,905 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:23:52,905 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-11-19 14:23:52,906 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=133, Unknown=0, NotChecked=0, Total=182 [2024-11-19 14:23:52,906 INFO L87 Difference]: Start difference. First operand 36 states and 47 transitions. cyclomatic complexity: 17 Second operand has 14 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 14 states have internal predecessors, (31), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:53,106 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:23:53,106 INFO L93 Difference]: Finished difference Result 75 states and 94 transitions. [2024-11-19 14:23:53,106 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 75 states and 94 transitions. [2024-11-19 14:23:53,107 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-19 14:23:53,107 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 75 states to 64 states and 82 transitions. [2024-11-19 14:23:53,107 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 45 [2024-11-19 14:23:53,107 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 51 [2024-11-19 14:23:53,107 INFO L73 IsDeterministic]: Start isDeterministic. Operand 64 states and 82 transitions. [2024-11-19 14:23:53,108 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:53,108 INFO L218 hiAutomatonCegarLoop]: Abstraction has 64 states and 82 transitions. [2024-11-19 14:23:53,108 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states and 82 transitions. [2024-11-19 14:23:53,109 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 60. [2024-11-19 14:23:53,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 60 states have (on average 1.3) internal successors, (78), 59 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:53,110 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 78 transitions. [2024-11-19 14:23:53,110 INFO L240 hiAutomatonCegarLoop]: Abstraction has 60 states and 78 transitions. [2024-11-19 14:23:53,110 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-11-19 14:23:53,111 INFO L425 stractBuchiCegarLoop]: Abstraction has 60 states and 78 transitions. [2024-11-19 14:23:53,111 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-11-19 14:23:53,111 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 60 states and 78 transitions. [2024-11-19 14:23:53,111 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-19 14:23:53,112 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:53,112 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:53,112 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 3, 2, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:23:53,112 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:53,112 INFO L745 eck$LassoCheckResult]: Stem: 794#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 783#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 774#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 775#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 790#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 791#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 792#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 811#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 805#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 803#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 804#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 808#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 767#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 768#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 797#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 814#L30 [2024-11-19 14:23:53,112 INFO L747 eck$LassoCheckResult]: Loop: 814#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 815#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 813#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 814#L30 [2024-11-19 14:23:53,112 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:53,113 INFO L85 PathProgramCache]: Analyzing trace with hash -154124210, now seen corresponding path program 2 times [2024-11-19 14:23:53,113 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:53,113 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1146192385] [2024-11-19 14:23:53,113 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:23:53,113 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:53,136 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-19 14:23:53,137 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:53,137 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:53,142 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:53,144 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:53,144 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:53,144 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 4 times [2024-11-19 14:23:53,144 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:53,144 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2016192403] [2024-11-19 14:23:53,144 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:23:53,144 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:53,148 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:23:53,148 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:53,148 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:53,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:53,150 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:53,152 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:53,152 INFO L85 PathProgramCache]: Analyzing trace with hash -194270775, now seen corresponding path program 2 times [2024-11-19 14:23:53,152 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:53,152 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1681819024] [2024-11-19 14:23:53,152 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:23:53,153 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:53,170 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-19 14:23:53,170 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:23:53,234 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2024-11-19 14:23:53,234 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:23:53,234 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1681819024] [2024-11-19 14:23:53,234 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1681819024] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:23:53,235 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [772635627] [2024-11-19 14:23:53,235 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:23:53,236 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:23:53,236 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:53,238 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:23:53,239 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2024-11-19 14:23:53,285 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-19 14:23:53,285 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:23:53,286 INFO L255 TraceCheckSpWp]: Trace formula consists of 108 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-19 14:23:53,286 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:53,332 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 3 proven. 2 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2024-11-19 14:23:53,332 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:23:53,454 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 3 proven. 2 refuted. 0 times theorem prover too weak. 9 trivial. 0 not checked. [2024-11-19 14:23:53,455 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [772635627] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:23:53,455 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:23:53,455 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 11 [2024-11-19 14:23:53,455 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1786190257] [2024-11-19 14:23:53,455 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:23:53,505 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:23:53,505 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2024-11-19 14:23:53,506 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2024-11-19 14:23:53,506 INFO L87 Difference]: Start difference. First operand 60 states and 78 transitions. cyclomatic complexity: 25 Second operand has 11 states, 11 states have (on average 2.909090909090909) internal successors, (32), 11 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-19 14:23:53,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:23:53,616 INFO L93 Difference]: Finished difference Result 75 states and 89 transitions. [2024-11-19 14:23:53,616 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 75 states and 89 transitions. [2024-11-19 14:23:53,617 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 15 [2024-11-19 14:23:53,617 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 75 states to 73 states and 87 transitions. [2024-11-19 14:23:53,617 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 57 [2024-11-19 14:23:53,617 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 57 [2024-11-19 14:23:53,617 INFO L73 IsDeterministic]: Start isDeterministic. Operand 73 states and 87 transitions. [2024-11-19 14:23:53,617 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:53,618 INFO L218 hiAutomatonCegarLoop]: Abstraction has 73 states and 87 transitions. [2024-11-19 14:23:53,618 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states and 87 transitions. [2024-11-19 14:23:53,619 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 68. [2024-11-19 14:23:53,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 68 states have (on average 1.2058823529411764) internal successors, (82), 67 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-19 14:23:53,620 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 82 transitions. [2024-11-19 14:23:53,620 INFO L240 hiAutomatonCegarLoop]: Abstraction has 68 states and 82 transitions. [2024-11-19 14:23:53,620 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-19 14:23:53,621 INFO L425 stractBuchiCegarLoop]: Abstraction has 68 states and 82 transitions. [2024-11-19 14:23:53,621 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-11-19 14:23:53,621 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 68 states and 82 transitions. [2024-11-19 14:23:53,621 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-19 14:23:53,621 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:53,621 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:53,622 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 3, 3, 2, 2, 1, 1, 1, 1, 1] [2024-11-19 14:23:53,622 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:53,622 INFO L745 eck$LassoCheckResult]: Stem: 1051#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 1040#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1032#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 1033#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1047#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1048#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1049#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1060#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1045#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1046#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 1018#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 1019#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1043#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1056#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1044#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1024#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1025#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1074#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1022#L30 [2024-11-19 14:23:53,622 INFO L747 eck$LassoCheckResult]: Loop: 1022#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 1023#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1073#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1022#L30 [2024-11-19 14:23:53,622 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:53,622 INFO L85 PathProgramCache]: Analyzing trace with hash -194268853, now seen corresponding path program 3 times [2024-11-19 14:23:53,622 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:53,622 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1696957569] [2024-11-19 14:23:53,622 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:23:53,622 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:53,634 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2024-11-19 14:23:53,634 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:53,634 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:53,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:53,647 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:53,648 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:53,648 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 5 times [2024-11-19 14:23:53,649 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:53,649 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1661132128] [2024-11-19 14:23:53,649 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:23:53,649 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:53,656 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:23:53,656 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:53,656 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:53,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:53,659 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:53,659 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:53,659 INFO L85 PathProgramCache]: Analyzing trace with hash -2142422100, now seen corresponding path program 3 times [2024-11-19 14:23:53,659 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:53,659 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [290896611] [2024-11-19 14:23:53,659 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:23:53,659 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:53,672 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2024-11-19 14:23:53,672 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:23:53,754 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-11-19 14:23:53,755 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:23:53,755 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [290896611] [2024-11-19 14:23:53,755 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [290896611] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:23:53,755 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1057420174] [2024-11-19 14:23:53,755 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:23:53,755 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:23:53,755 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:53,757 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:23:53,759 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2024-11-19 14:23:53,806 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2024-11-19 14:23:53,806 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:23:53,808 INFO L255 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-19 14:23:53,809 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:53,881 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 12 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:53,881 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:23:53,955 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 12 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:53,956 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1057420174] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:23:53,956 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:23:53,956 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 10, 10] total 15 [2024-11-19 14:23:53,956 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [862741289] [2024-11-19 14:23:53,956 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:23:54,032 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:23:54,033 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2024-11-19 14:23:54,033 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2024-11-19 14:23:54,033 INFO L87 Difference]: Start difference. First operand 68 states and 82 transitions. cyclomatic complexity: 21 Second operand has 16 states, 15 states have (on average 2.6666666666666665) internal successors, (40), 16 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-19 14:23:54,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:23:54,214 INFO L93 Difference]: Finished difference Result 112 states and 131 transitions. [2024-11-19 14:23:54,214 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 112 states and 131 transitions. [2024-11-19 14:23:54,215 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 15 [2024-11-19 14:23:54,216 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 112 states to 98 states and 117 transitions. [2024-11-19 14:23:54,216 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 74 [2024-11-19 14:23:54,216 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 80 [2024-11-19 14:23:54,216 INFO L73 IsDeterministic]: Start isDeterministic. Operand 98 states and 117 transitions. [2024-11-19 14:23:54,216 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:54,216 INFO L218 hiAutomatonCegarLoop]: Abstraction has 98 states and 117 transitions. [2024-11-19 14:23:54,217 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states and 117 transitions. [2024-11-19 14:23:54,222 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 91. [2024-11-19 14:23:54,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 91 states, 91 states have (on average 1.1978021978021978) internal successors, (109), 90 states have internal predecessors, (109), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:54,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 109 transitions. [2024-11-19 14:23:54,222 INFO L240 hiAutomatonCegarLoop]: Abstraction has 91 states and 109 transitions. [2024-11-19 14:23:54,224 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2024-11-19 14:23:54,224 INFO L425 stractBuchiCegarLoop]: Abstraction has 91 states and 109 transitions. [2024-11-19 14:23:54,225 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-11-19 14:23:54,225 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 91 states and 109 transitions. [2024-11-19 14:23:54,225 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-19 14:23:54,225 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:54,225 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:54,226 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 3, 2, 2, 1, 1, 1, 1, 1] [2024-11-19 14:23:54,226 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:54,226 INFO L745 eck$LassoCheckResult]: Stem: 1369#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 1359#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1355#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 1356#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1365#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1366#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1367#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1406#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1405#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1404#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1403#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1402#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 1401#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 1400#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1345#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1346#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1399#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1394#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1392#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1389#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1390#L30 [2024-11-19 14:23:54,226 INFO L747 eck$LassoCheckResult]: Loop: 1390#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 1393#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1391#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1390#L30 [2024-11-19 14:23:54,226 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:54,226 INFO L85 PathProgramCache]: Analyzing trace with hash -326653975, now seen corresponding path program 4 times [2024-11-19 14:23:54,226 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:54,226 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [969623904] [2024-11-19 14:23:54,227 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:23:54,227 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:54,241 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:23:54,242 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:54,242 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:54,251 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:54,253 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:54,254 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:54,254 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 6 times [2024-11-19 14:23:54,254 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:54,254 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1296555460] [2024-11-19 14:23:54,254 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:23:54,254 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:54,257 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-19 14:23:54,257 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:54,257 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:54,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:54,260 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:54,260 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:54,260 INFO L85 PathProgramCache]: Analyzing trace with hash 1047353422, now seen corresponding path program 4 times [2024-11-19 14:23:54,260 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:54,260 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1528093179] [2024-11-19 14:23:54,261 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:23:54,261 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:54,273 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:23:54,273 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:23:54,390 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2024-11-19 14:23:54,391 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:23:54,391 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1528093179] [2024-11-19 14:23:54,391 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1528093179] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:23:54,391 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1717814870] [2024-11-19 14:23:54,391 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:23:54,391 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:23:54,391 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:54,393 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:23:54,394 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2024-11-19 14:23:54,437 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:23:54,437 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:23:54,438 INFO L255 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-19 14:23:54,438 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:54,490 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2024-11-19 14:23:54,490 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:23:54,548 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2024-11-19 14:23:54,550 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1717814870] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:23:54,551 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:23:54,551 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2024-11-19 14:23:54,551 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [574030334] [2024-11-19 14:23:54,551 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:23:54,600 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:23:54,601 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2024-11-19 14:23:54,601 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=151, Unknown=0, NotChecked=0, Total=210 [2024-11-19 14:23:54,601 INFO L87 Difference]: Start difference. First operand 91 states and 109 transitions. cyclomatic complexity: 25 Second operand has 15 states, 14 states have (on average 2.5) internal successors, (35), 15 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:54,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:23:54,749 INFO L93 Difference]: Finished difference Result 114 states and 136 transitions. [2024-11-19 14:23:54,749 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 114 states and 136 transitions. [2024-11-19 14:23:54,750 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-19 14:23:54,751 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 114 states to 110 states and 132 transitions. [2024-11-19 14:23:54,751 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 89 [2024-11-19 14:23:54,752 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 89 [2024-11-19 14:23:54,753 INFO L73 IsDeterministic]: Start isDeterministic. Operand 110 states and 132 transitions. [2024-11-19 14:23:54,753 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:54,753 INFO L218 hiAutomatonCegarLoop]: Abstraction has 110 states and 132 transitions. [2024-11-19 14:23:54,753 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states and 132 transitions. [2024-11-19 14:23:54,757 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 105. [2024-11-19 14:23:54,758 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 105 states, 105 states have (on average 1.2095238095238094) internal successors, (127), 104 states have internal predecessors, (127), 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-19 14:23:54,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 105 states to 105 states and 127 transitions. [2024-11-19 14:23:54,758 INFO L240 hiAutomatonCegarLoop]: Abstraction has 105 states and 127 transitions. [2024-11-19 14:23:54,759 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-11-19 14:23:54,759 INFO L425 stractBuchiCegarLoop]: Abstraction has 105 states and 127 transitions. [2024-11-19 14:23:54,759 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-11-19 14:23:54,759 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 105 states and 127 transitions. [2024-11-19 14:23:54,760 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-19 14:23:54,760 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:54,760 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:54,760 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 4, 3, 3, 1, 1, 1, 1, 1] [2024-11-19 14:23:54,760 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:54,761 INFO L745 eck$LassoCheckResult]: Stem: 1733#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 1718#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 1710#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 1711#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1728#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1729#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1730#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1741#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1726#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1727#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 1758#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 1757#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 1755#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 1752#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1702#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1703#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1724#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1725#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1756#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1744#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1745#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1748#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1749#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1753#L30 [2024-11-19 14:23:54,761 INFO L747 eck$LassoCheckResult]: Loop: 1753#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 1785#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1786#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1753#L30 [2024-11-19 14:23:54,761 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:54,761 INFO L85 PathProgramCache]: Analyzing trace with hash 1047355344, now seen corresponding path program 5 times [2024-11-19 14:23:54,761 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:54,761 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [812926828] [2024-11-19 14:23:54,761 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:23:54,762 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:54,771 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2024-11-19 14:23:54,771 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:54,771 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:54,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:54,777 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:54,778 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:54,778 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 7 times [2024-11-19 14:23:54,778 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:54,778 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1056595320] [2024-11-19 14:23:54,778 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-19 14:23:54,778 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:54,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:54,780 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:54,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:54,782 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:54,783 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:54,783 INFO L85 PathProgramCache]: Analyzing trace with hash -1174322425, now seen corresponding path program 5 times [2024-11-19 14:23:54,783 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:54,783 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2004839557] [2024-11-19 14:23:54,783 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:23:54,783 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:54,791 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2024-11-19 14:23:54,792 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:23:54,910 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 22 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:54,910 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:23:54,910 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2004839557] [2024-11-19 14:23:54,911 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2004839557] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:23:54,911 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1500068796] [2024-11-19 14:23:54,911 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:23:54,911 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:23:54,911 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:54,912 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:23:54,913 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2024-11-19 14:23:54,963 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2024-11-19 14:23:54,963 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:23:54,964 INFO L255 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 12 conjuncts are in the unsatisfiable core [2024-11-19 14:23:54,965 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:55,078 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 22 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:55,078 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:23:55,148 INFO L134 CoverageAnalysis]: Checked inductivity of 38 backedges. 22 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-19 14:23:55,148 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1500068796] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:23:55,148 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:23:55,148 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12, 12] total 17 [2024-11-19 14:23:55,148 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1595764625] [2024-11-19 14:23:55,148 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:23:55,199 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:23:55,200 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2024-11-19 14:23:55,200 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=223, Unknown=0, NotChecked=0, Total=306 [2024-11-19 14:23:55,200 INFO L87 Difference]: Start difference. First operand 105 states and 127 transitions. cyclomatic complexity: 29 Second operand has 18 states, 17 states have (on average 2.3529411764705883) internal successors, (40), 18 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-19 14:23:55,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:23:55,422 INFO L93 Difference]: Finished difference Result 165 states and 196 transitions. [2024-11-19 14:23:55,422 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 165 states and 196 transitions. [2024-11-19 14:23:55,423 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 15 [2024-11-19 14:23:55,424 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 165 states to 148 states and 179 transitions. [2024-11-19 14:23:55,424 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 116 [2024-11-19 14:23:55,424 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 125 [2024-11-19 14:23:55,424 INFO L73 IsDeterministic]: Start isDeterministic. Operand 148 states and 179 transitions. [2024-11-19 14:23:55,424 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:55,424 INFO L218 hiAutomatonCegarLoop]: Abstraction has 148 states and 179 transitions. [2024-11-19 14:23:55,424 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states and 179 transitions. [2024-11-19 14:23:55,429 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 131. [2024-11-19 14:23:55,429 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 131 states have (on average 1.2213740458015268) internal successors, (160), 130 states have internal predecessors, (160), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:23:55,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 160 transitions. [2024-11-19 14:23:55,429 INFO L240 hiAutomatonCegarLoop]: Abstraction has 131 states and 160 transitions. [2024-11-19 14:23:55,433 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2024-11-19 14:23:55,434 INFO L425 stractBuchiCegarLoop]: Abstraction has 131 states and 160 transitions. [2024-11-19 14:23:55,434 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-11-19 14:23:55,434 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 131 states and 160 transitions. [2024-11-19 14:23:55,434 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-19 14:23:55,435 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:55,435 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:55,435 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 4, 3, 3, 1, 1, 1, 1, 1] [2024-11-19 14:23:55,435 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:55,436 INFO L745 eck$LassoCheckResult]: Stem: 2175#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 2163#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 2159#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 2160#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2171#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2172#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2173#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2227#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2226#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2224#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2223#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2222#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2221#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2220#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 2218#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 2216#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2213#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2214#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2169#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2170#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2219#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2202#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2149#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2150#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2179#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2217#L30 [2024-11-19 14:23:55,436 INFO L747 eck$LassoCheckResult]: Loop: 2217#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 2208#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2209#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2217#L30 [2024-11-19 14:23:55,436 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:55,436 INFO L85 PathProgramCache]: Analyzing trace with hash -185017358, now seen corresponding path program 6 times [2024-11-19 14:23:55,436 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:55,436 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [897123927] [2024-11-19 14:23:55,436 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:23:55,436 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:55,452 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2024-11-19 14:23:55,452 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:55,452 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:55,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:55,461 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:55,461 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:55,461 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 8 times [2024-11-19 14:23:55,461 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:55,461 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1319191937] [2024-11-19 14:23:55,462 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:23:55,462 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:55,465 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:23:55,465 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:55,465 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:55,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:55,470 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:55,470 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:55,470 INFO L85 PathProgramCache]: Analyzing trace with hash -1409041499, now seen corresponding path program 6 times [2024-11-19 14:23:55,470 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:55,470 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [529070421] [2024-11-19 14:23:55,470 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:23:55,470 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:55,492 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2024-11-19 14:23:55,493 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:23:55,493 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:55,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:55,501 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:56,367 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:23:56,367 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:23:56,367 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:23:56,368 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:23:56,368 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-19 14:23:56,368 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:56,368 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:23:56,368 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:23:56,368 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration10_Lasso [2024-11-19 14:23:56,368 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:23:56,368 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:23:56,372 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,525 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,527 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,528 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,529 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,531 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,532 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,534 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,535 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,536 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,541 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,550 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,551 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,552 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,553 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,554 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,556 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,572 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,573 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,574 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,576 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,577 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,578 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,579 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,581 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,583 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,585 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,586 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,589 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:56,811 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:23:56,811 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-19 14:23:56,811 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:56,811 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:56,812 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-19 14:23:56,813 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-19 14:23:56,813 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:56,823 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:56,823 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:56,823 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:56,823 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:56,825 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:56,825 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:56,827 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:56,837 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-19 14:23:56,837 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:56,837 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:56,838 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-19 14:23:56,838 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-19 14:23:56,839 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:56,849 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:56,849 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:56,849 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:56,849 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:56,850 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:56,850 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:56,852 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:56,862 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:56,862 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:56,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:56,864 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-19 14:23:56,865 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-19 14:23:56,865 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:56,875 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:56,875 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:56,875 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:56,875 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:56,877 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:56,877 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:56,880 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:56,890 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-19 14:23:56,891 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:56,891 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:56,892 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-19 14:23:56,893 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-19 14:23:56,893 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:56,902 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:56,902 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:56,903 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:56,903 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:56,906 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:56,906 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:56,913 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-19 14:23:56,934 INFO L443 ModelExtractionUtils]: Simplification made 13 calls to the SMT solver. [2024-11-19 14:23:56,935 INFO L444 ModelExtractionUtils]: 2 out of 19 variables were initially zero. Simplification set additionally 14 variables to zero. [2024-11-19 14:23:56,935 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:56,935 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:56,936 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:56,937 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Waiting until timeout for monitored process [2024-11-19 14:23:56,937 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-19 14:23:56,948 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-19 14:23:56,948 INFO L474 LassoAnalysis]: Proved termination. [2024-11-19 14:23:56,948 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(~N~0, ULTIMATE.start_rangesum_~i~1#1) = 1*~N~0 - 1*ULTIMATE.start_rangesum_~i~1#1 Supporting invariants [] [2024-11-19 14:23:56,958 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Ended with exit code 0 [2024-11-19 14:23:56,973 INFO L156 tatePredicateManager]: 8 out of 8 supporting invariants were superfluous and have been removed [2024-11-19 14:23:56,982 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:57,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:57,004 INFO L255 TraceCheckSpWp]: Trace formula consists of 126 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-19 14:23:57,004 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:57,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:57,025 INFO L255 TraceCheckSpWp]: Trace formula consists of 14 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-19 14:23:57,025 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:57,035 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-19 14:23:57,036 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-19 14:23:57,036 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 131 states and 160 transitions. cyclomatic complexity: 36 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-19 14:23:57,053 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 131 states and 160 transitions. cyclomatic complexity: 36. 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 162 states and 193 transitions. Complement of second has 7 states. [2024-11-19 14:23:57,058 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-19 14:23:57,058 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-19 14:23:57,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 12 transitions. [2024-11-19 14:23:57,059 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 25 letters. Loop has 3 letters. [2024-11-19 14:23:57,059 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:57,059 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 28 letters. Loop has 3 letters. [2024-11-19 14:23:57,059 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:57,059 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 25 letters. Loop has 6 letters. [2024-11-19 14:23:57,059 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:57,059 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 162 states and 193 transitions. [2024-11-19 14:23:57,060 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 10 [2024-11-19 14:23:57,061 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 162 states to 144 states and 175 transitions. [2024-11-19 14:23:57,061 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 89 [2024-11-19 14:23:57,061 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 119 [2024-11-19 14:23:57,061 INFO L73 IsDeterministic]: Start isDeterministic. Operand 144 states and 175 transitions. [2024-11-19 14:23:57,061 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:57,061 INFO L218 hiAutomatonCegarLoop]: Abstraction has 144 states and 175 transitions. [2024-11-19 14:23:57,061 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states and 175 transitions. [2024-11-19 14:23:57,066 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 132. [2024-11-19 14:23:57,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 132 states, 132 states have (on average 1.2348484848484849) internal successors, (163), 131 states have internal predecessors, (163), 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-19 14:23:57,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 163 transitions. [2024-11-19 14:23:57,067 INFO L240 hiAutomatonCegarLoop]: Abstraction has 132 states and 163 transitions. [2024-11-19 14:23:57,067 INFO L425 stractBuchiCegarLoop]: Abstraction has 132 states and 163 transitions. [2024-11-19 14:23:57,067 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-11-19 14:23:57,067 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 132 states and 163 transitions. [2024-11-19 14:23:57,068 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 10 [2024-11-19 14:23:57,068 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:57,068 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:57,068 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:23:57,068 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-19 14:23:57,068 INFO L745 eck$LassoCheckResult]: Stem: 2609#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 2597#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 2589#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 2590#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2605#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2606#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2603#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2604#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 2575#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 2576#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2694#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2692#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2693#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2696#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2695#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2682#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 2587#L29-4 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 2588#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 2598#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2577#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2578#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2649#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2642#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2641#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2616#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 2607#L29-9 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 2608#rangesum_returnLabel#2 main_#t~ret9#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret2~0#1 := main_#t~ret9#1;havoc main_#t~ret9#1;call main_#t~mem10#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem10#1;havoc main_#t~mem10#1;main_~i~2#1 := 0; 2594#L57-3 [2024-11-19 14:23:57,069 INFO L747 eck$LassoCheckResult]: Loop: 2594#L57-3 assume !!(main_~i~2#1 < ~N~0 - 1);call main_#t~mem11#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset + 4 * (1 + main_~i~2#1), 4);call write~int#1(main_#t~mem11#1, main_~#x~0#1.base, main_~#x~0#1.offset + 4 * main_~i~2#1, 4);havoc main_#t~mem11#1; 2595#L57-2 main_#t~post12#1 := main_~i~2#1;main_~i~2#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; 2594#L57-3 [2024-11-19 14:23:57,069 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:57,069 INFO L85 PathProgramCache]: Analyzing trace with hash -1751120697, now seen corresponding path program 1 times [2024-11-19 14:23:57,069 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:57,069 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1141047437] [2024-11-19 14:23:57,073 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:57,073 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:57,085 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:57,085 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:57,090 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:57,096 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:57,096 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:57,097 INFO L85 PathProgramCache]: Analyzing trace with hash 3427, now seen corresponding path program 1 times [2024-11-19 14:23:57,097 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:57,097 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [96142702] [2024-11-19 14:23:57,097 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:57,097 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:57,100 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:57,100 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:57,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:57,102 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:57,102 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:57,102 INFO L85 PathProgramCache]: Analyzing trace with hash 800192681, now seen corresponding path program 1 times [2024-11-19 14:23:57,102 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:57,102 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [570305389] [2024-11-19 14:23:57,103 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:57,103 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:57,112 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:57,112 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:57,117 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:57,119 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:57,495 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Ended with exit code 0 [2024-11-19 14:23:57,856 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:23:57,856 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:23:57,856 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:23:57,856 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:23:57,856 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-19 14:23:57,856 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:57,856 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:23:57,857 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:23:57,857 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration11_Lasso [2024-11-19 14:23:57,857 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:23:57,857 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:23:57,859 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,863 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,864 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,865 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,867 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,869 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,871 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,872 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,873 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,875 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,876 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:57,879 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,010 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,011 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,012 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,014 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,015 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,023 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,024 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,029 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,031 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,032 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,033 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,034 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,035 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,036 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,037 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,038 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,039 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,040 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,041 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,043 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:58,242 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:23:58,242 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-19 14:23:58,243 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,243 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,244 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,245 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Waiting until timeout for monitored process [2024-11-19 14:23:58,245 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,254 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,255 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:58,255 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,255 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,255 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,255 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:58,255 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:58,256 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,266 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:58,266 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,266 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,267 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,267 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Waiting until timeout for monitored process [2024-11-19 14:23:58,268 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,277 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,277 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:58,277 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,277 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,277 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,278 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:58,278 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:58,279 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,288 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:58,288 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,288 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,289 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,290 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Waiting until timeout for monitored process [2024-11-19 14:23:58,291 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,300 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,300 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:58,300 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,300 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,301 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,301 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:58,301 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:58,302 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,311 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Ended with exit code 0 [2024-11-19 14:23:58,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,313 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,313 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Waiting until timeout for monitored process [2024-11-19 14:23:58,317 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,327 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,327 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:58,327 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,327 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,327 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,327 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:58,327 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:58,328 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,338 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:58,339 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,339 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,340 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,340 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Waiting until timeout for monitored process [2024-11-19 14:23:58,342 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,351 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,351 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:58,351 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,351 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,351 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,352 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:58,352 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:58,353 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,363 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:58,363 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,363 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,364 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,364 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Waiting until timeout for monitored process [2024-11-19 14:23:58,365 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-19 14:23:58,374 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,375 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,375 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,375 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,376 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:58,376 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:58,378 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,387 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Ended with exit code 0 [2024-11-19 14:23:58,388 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,388 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,389 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,389 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Waiting until timeout for monitored process [2024-11-19 14:23:58,390 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,400 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,400 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:58,400 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,400 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,400 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,400 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:58,400 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:58,401 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,411 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:58,411 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,411 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,412 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,413 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Waiting until timeout for monitored process [2024-11-19 14:23:58,413 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-19 14:23:58,423 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,423 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:58,423 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,423 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,423 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,423 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:58,423 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:58,424 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,434 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:58,434 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,435 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,436 INFO L229 MonitoredProcess]: Starting monitored process 46 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,436 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Waiting until timeout for monitored process [2024-11-19 14:23:58,437 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,446 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,447 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:58,447 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,447 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,447 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,447 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:58,447 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:58,448 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,458 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Ended with exit code 0 [2024-11-19 14:23:58,458 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,458 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,459 INFO L229 MonitoredProcess]: Starting monitored process 47 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,460 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Waiting until timeout for monitored process [2024-11-19 14:23:58,460 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,470 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,470 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:58,470 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,470 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,470 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,470 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:58,470 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:58,471 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,482 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Ended with exit code 0 [2024-11-19 14:23:58,482 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,482 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,484 INFO L229 MonitoredProcess]: Starting monitored process 48 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,501 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Waiting until timeout for monitored process [2024-11-19 14:23:58,502 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,512 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,512 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:58,512 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,512 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,512 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,513 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:58,513 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:58,514 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,523 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:58,524 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,524 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,525 INFO L229 MonitoredProcess]: Starting monitored process 49 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,526 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Waiting until timeout for monitored process [2024-11-19 14:23:58,527 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-19 14:23:58,537 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,537 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,537 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,537 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,539 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:58,539 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:58,542 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,551 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:58,552 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,552 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,553 INFO L229 MonitoredProcess]: Starting monitored process 50 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,553 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Waiting until timeout for monitored process [2024-11-19 14:23:58,554 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,563 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,563 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,563 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,564 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,565 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:58,565 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:58,567 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,577 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Ended with exit code 0 [2024-11-19 14:23:58,577 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,577 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,578 INFO L229 MonitoredProcess]: Starting monitored process 51 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,579 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Waiting until timeout for monitored process [2024-11-19 14:23:58,580 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,589 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,589 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,589 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,589 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,590 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:58,590 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:58,593 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-19 14:23:58,602 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Ended with exit code 0 [2024-11-19 14:23:58,602 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,602 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,603 INFO L229 MonitoredProcess]: Starting monitored process 52 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,604 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Waiting until timeout for monitored process [2024-11-19 14:23:58,604 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:23:58,614 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:58,614 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:58,614 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:58,614 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:58,617 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-19 14:23:58,617 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-19 14:23:58,624 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-19 14:23:58,638 INFO L443 ModelExtractionUtils]: Simplification made 13 calls to the SMT solver. [2024-11-19 14:23:58,638 INFO L444 ModelExtractionUtils]: 1 out of 16 variables were initially zero. Simplification set additionally 11 variables to zero. [2024-11-19 14:23:58,638 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:58,638 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,639 INFO L229 MonitoredProcess]: Starting monitored process 53 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,639 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Waiting until timeout for monitored process [2024-11-19 14:23:58,640 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-19 14:23:58,650 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-19 14:23:58,650 INFO L474 LassoAnalysis]: Proved termination. [2024-11-19 14:23:58,650 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(v_rep(select #length ULTIMATE.start_main_~#x~0#1.base)_3, ULTIMATE.start_main_~i~2#1, ULTIMATE.start_main_~#x~0#1.offset) = 1*v_rep(select #length ULTIMATE.start_main_~#x~0#1.base)_3 - 4*ULTIMATE.start_main_~i~2#1 - 1*ULTIMATE.start_main_~#x~0#1.offset Supporting invariants [] [2024-11-19 14:23:58,661 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Ended with exit code 0 [2024-11-19 14:23:58,668 INFO L156 tatePredicateManager]: 5 out of 5 supporting invariants were superfluous and have been removed [2024-11-19 14:23:58,669 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2024-11-19 14:23:58,669 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2024-11-19 14:23:58,669 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: ~#x~0!offset [2024-11-19 14:23:58,676 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:58,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:58,696 INFO L255 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-19 14:23:58,697 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:58,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:58,720 INFO L255 TraceCheckSpWp]: Trace formula consists of 15 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-19 14:23:58,720 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:58,729 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-19 14:23:58,729 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-19 14:23:58,729 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 132 states and 163 transitions. cyclomatic complexity: 38 Second operand has 3 states, 3 states have (on average 7.0) internal successors, (21), 3 states have internal predecessors, (21), 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-19 14:23:58,743 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 132 states and 163 transitions. cyclomatic complexity: 38. Second operand has 3 states, 3 states have (on average 7.0) internal successors, (21), 3 states have internal predecessors, (21), 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 136 states and 170 transitions. Complement of second has 5 states. [2024-11-19 14:23:58,743 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 3 states 1 stem states 1 non-accepting loop states 1 accepting loop states [2024-11-19 14:23:58,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 7.0) internal successors, (21), 3 states have internal predecessors, (21), 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-19 14:23:58,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 25 transitions. [2024-11-19 14:23:58,744 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 25 transitions. Stem has 27 letters. Loop has 2 letters. [2024-11-19 14:23:58,744 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:58,744 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 25 transitions. Stem has 29 letters. Loop has 2 letters. [2024-11-19 14:23:58,744 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:58,744 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 25 transitions. Stem has 27 letters. Loop has 4 letters. [2024-11-19 14:23:58,744 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:23:58,744 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 136 states and 170 transitions. [2024-11-19 14:23:58,745 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:23:58,746 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 136 states to 67 states and 85 transitions. [2024-11-19 14:23:58,746 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 39 [2024-11-19 14:23:58,746 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 40 [2024-11-19 14:23:58,746 INFO L73 IsDeterministic]: Start isDeterministic. Operand 67 states and 85 transitions. [2024-11-19 14:23:58,746 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:58,746 INFO L218 hiAutomatonCegarLoop]: Abstraction has 67 states and 85 transitions. [2024-11-19 14:23:58,746 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states and 85 transitions. [2024-11-19 14:23:58,747 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 67. [2024-11-19 14:23:58,747 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 67 states have (on average 1.2686567164179106) internal successors, (85), 66 states have internal predecessors, (85), 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-19 14:23:58,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 85 transitions. [2024-11-19 14:23:58,748 INFO L240 hiAutomatonCegarLoop]: Abstraction has 67 states and 85 transitions. [2024-11-19 14:23:58,748 INFO L425 stractBuchiCegarLoop]: Abstraction has 67 states and 85 transitions. [2024-11-19 14:23:58,748 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-11-19 14:23:58,748 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 67 states and 85 transitions. [2024-11-19 14:23:58,748 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:23:58,748 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:58,748 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:58,749 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:23:58,749 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:58,749 INFO L745 eck$LassoCheckResult]: Stem: 3001#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 2991#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 2985#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 2986#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2997#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 2998#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 2999#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3018#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3016#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3014#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3013#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3011#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3006#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3005#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 2970#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 2971#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2978#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2979#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3004#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3007#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2977#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2994#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 2981#L29-4 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 2982#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 2992#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3024#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3023#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2993#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2972#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2973#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3027#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3028#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3026#L29-7 [2024-11-19 14:23:58,749 INFO L747 eck$LassoCheckResult]: Loop: 3026#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3029#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3025#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3026#L29-7 [2024-11-19 14:23:58,750 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:58,750 INFO L85 PathProgramCache]: Analyzing trace with hash 1475256012, now seen corresponding path program 1 times [2024-11-19 14:23:58,750 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:58,750 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [798406664] [2024-11-19 14:23:58,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:58,750 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:58,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:58,847 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 3 proven. 9 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2024-11-19 14:23:58,847 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:23:58,847 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [798406664] [2024-11-19 14:23:58,847 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [798406664] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:23:58,848 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1407349587] [2024-11-19 14:23:58,848 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:58,848 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:23:58,848 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:58,849 INFO L229 MonitoredProcess]: Starting monitored process 54 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:23:58,850 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (54)] Waiting until timeout for monitored process [2024-11-19 14:23:58,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:58,912 INFO L255 TraceCheckSpWp]: Trace formula consists of 166 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-19 14:23:58,913 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:59,011 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 16 proven. 14 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-11-19 14:23:59,011 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:23:59,091 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 16 proven. 14 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-11-19 14:23:59,091 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1407349587] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:23:59,091 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:23:59,092 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 11, 11] total 24 [2024-11-19 14:23:59,092 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1705926386] [2024-11-19 14:23:59,092 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:23:59,092 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:23:59,092 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:59,092 INFO L85 PathProgramCache]: Analyzing trace with hash 88157, now seen corresponding path program 1 times [2024-11-19 14:23:59,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:59,093 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [199985023] [2024-11-19 14:23:59,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:59,093 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:59,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:59,095 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:59,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:59,097 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:59,144 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:23:59,145 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2024-11-19 14:23:59,145 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=101, Invalid=451, Unknown=0, NotChecked=0, Total=552 [2024-11-19 14:23:59,145 INFO L87 Difference]: Start difference. First operand 67 states and 85 transitions. cyclomatic complexity: 24 Second operand has 24 states, 24 states have (on average 2.6666666666666665) internal successors, (64), 24 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-19 14:23:59,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:23:59,371 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2024-11-19 14:23:59,371 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 90 states and 106 transitions. [2024-11-19 14:23:59,372 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 16 [2024-11-19 14:23:59,372 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 90 states to 82 states and 96 transitions. [2024-11-19 14:23:59,372 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 49 [2024-11-19 14:23:59,372 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 49 [2024-11-19 14:23:59,372 INFO L73 IsDeterministic]: Start isDeterministic. Operand 82 states and 96 transitions. [2024-11-19 14:23:59,373 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:23:59,373 INFO L218 hiAutomatonCegarLoop]: Abstraction has 82 states and 96 transitions. [2024-11-19 14:23:59,373 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states and 96 transitions. [2024-11-19 14:23:59,374 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 69. [2024-11-19 14:23:59,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 69 states, 69 states have (on average 1.173913043478261) internal successors, (81), 68 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-19 14:23:59,374 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 81 transitions. [2024-11-19 14:23:59,374 INFO L240 hiAutomatonCegarLoop]: Abstraction has 69 states and 81 transitions. [2024-11-19 14:23:59,378 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2024-11-19 14:23:59,379 INFO L425 stractBuchiCegarLoop]: Abstraction has 69 states and 81 transitions. [2024-11-19 14:23:59,379 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-11-19 14:23:59,379 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 69 states and 81 transitions. [2024-11-19 14:23:59,379 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-19 14:23:59,379 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:23:59,379 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:23:59,380 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 5, 5, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:23:59,380 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:23:59,380 INFO L745 eck$LassoCheckResult]: Stem: 3386#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 3377#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 3372#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 3373#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3382#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3383#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3384#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3403#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3402#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3400#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3398#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3397#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3394#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3393#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 3356#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 3357#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3379#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3418#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3417#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3364#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3365#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3419#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3412#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3396#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3395#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3362#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3363#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3401#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3399#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3390#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3391#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 3368#L29-4 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 3369#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 3378#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3358#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3359#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3387#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3416#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3415#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3414#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3413#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3407#L29-7 [2024-11-19 14:23:59,381 INFO L747 eck$LassoCheckResult]: Loop: 3407#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3411#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3410#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3407#L29-7 [2024-11-19 14:23:59,381 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:59,381 INFO L85 PathProgramCache]: Analyzing trace with hash 584366359, now seen corresponding path program 1 times [2024-11-19 14:23:59,381 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:59,381 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1991823681] [2024-11-19 14:23:59,381 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:59,382 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:59,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:59,433 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 2 proven. 18 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2024-11-19 14:23:59,434 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:23:59,434 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1991823681] [2024-11-19 14:23:59,434 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1991823681] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:23:59,434 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [927116923] [2024-11-19 14:23:59,434 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:59,434 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:23:59,434 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:59,436 INFO L229 MonitoredProcess]: Starting monitored process 55 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:23:59,437 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (55)] Waiting until timeout for monitored process [2024-11-19 14:23:59,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:59,502 INFO L255 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-19 14:23:59,503 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:23:59,523 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 20 proven. 0 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2024-11-19 14:23:59,523 INFO L307 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-11-19 14:23:59,523 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [927116923] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:23:59,523 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-11-19 14:23:59,523 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [5] total 6 [2024-11-19 14:23:59,523 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [266598471] [2024-11-19 14:23:59,523 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:23:59,524 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:23:59,524 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:59,524 INFO L85 PathProgramCache]: Analyzing trace with hash 88159, now seen corresponding path program 1 times [2024-11-19 14:23:59,524 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:23:59,524 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1075069218] [2024-11-19 14:23:59,524 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:23:59,524 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:23:59,526 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:59,526 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:23:59,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:23:59,528 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:23:59,553 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:23:59,553 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:23:59,553 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:23:59,553 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:23:59,553 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-19 14:23:59,553 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:59,553 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:23:59,553 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:23:59,553 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration13_Loop [2024-11-19 14:23:59,553 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:23:59,553 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:23:59,554 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:59,559 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:59,589 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:23:59,589 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-19 14:23:59,589 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:59,590 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:59,591 INFO L229 MonitoredProcess]: Starting monitored process 56 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:59,592 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Waiting until timeout for monitored process [2024-11-19 14:23:59,593 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-19 14:23:59,593 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:23:59,614 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Ended with exit code 0 [2024-11-19 14:23:59,615 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:59,615 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:59,616 INFO L229 MonitoredProcess]: Starting monitored process 57 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:59,617 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Waiting until timeout for monitored process [2024-11-19 14:23:59,618 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-19 14:23:59,618 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:23:59,873 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-19 14:23:59,878 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:59,878 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:23:59,878 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:23:59,878 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:23:59,878 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:23:59,878 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-19 14:23:59,878 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:59,878 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:23:59,878 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:23:59,879 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration13_Loop [2024-11-19 14:23:59,879 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:23:59,879 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:23:59,879 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:59,884 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:23:59,908 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:23:59,908 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-19 14:23:59,909 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:59,909 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:59,909 INFO L229 MonitoredProcess]: Starting monitored process 58 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:59,910 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Waiting until timeout for monitored process [2024-11-19 14:23:59,911 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-19 14:23:59,920 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:23:59,920 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:23:59,920 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:23:59,920 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:23:59,920 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:23:59,921 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:23:59,921 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:23:59,923 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-19 14:23:59,925 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2024-11-19 14:23:59,925 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-19 14:23:59,925 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:23:59,925 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:23:59,926 INFO L229 MonitoredProcess]: Starting monitored process 59 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:23:59,927 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Waiting until timeout for monitored process [2024-11-19 14:23:59,927 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-19 14:23:59,927 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-19 14:23:59,927 INFO L474 LassoAnalysis]: Proved termination. [2024-11-19 14:23:59,927 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(~N~0, ULTIMATE.start_rangesum_~i~1#1) = 1*~N~0 - 2*ULTIMATE.start_rangesum_~i~1#1 Supporting invariants [] [2024-11-19 14:23:59,936 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Forceful destruction successful, exit code 0 [2024-11-19 14:23:59,937 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-19 14:23:59,944 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:23:59,974 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:23:59,974 INFO L255 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-19 14:23:59,975 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:00,010 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:24:00,011 WARN L253 TraceCheckSpWp]: Trace formula consists of 6 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-19 14:24:00,011 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:00,023 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-19 14:24:00,023 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2024-11-19 14:24:00,023 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 69 states and 81 transitions. cyclomatic complexity: 18 Second operand has 4 states, 4 states have (on average 5.25) internal successors, (21), 4 states have internal predecessors, (21), 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-19 14:24:00,063 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Forceful destruction successful, exit code 0 [2024-11-19 14:24:00,071 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Forceful destruction successful, exit code 0 [2024-11-19 14:24:00,075 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 69 states and 81 transitions. cyclomatic complexity: 18. Second operand has 4 states, 4 states have (on average 5.25) internal successors, (21), 4 states have internal predecessors, (21), 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 80 states and 93 transitions. Complement of second has 7 states. [2024-11-19 14:24:00,079 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-19 14:24:00,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.25) internal successors, (21), 4 states have internal predecessors, (21), 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-19 14:24:00,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 22 transitions. [2024-11-19 14:24:00,080 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 22 transitions. Stem has 41 letters. Loop has 3 letters. [2024-11-19 14:24:00,080 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:24:00,080 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 22 transitions. Stem has 44 letters. Loop has 3 letters. [2024-11-19 14:24:00,081 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:24:00,081 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 22 transitions. Stem has 41 letters. Loop has 6 letters. [2024-11-19 14:24:00,081 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:24:00,081 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 80 states and 93 transitions. [2024-11-19 14:24:00,081 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:00,082 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 80 states to 76 states and 89 transitions. [2024-11-19 14:24:00,082 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 35 [2024-11-19 14:24:00,082 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2024-11-19 14:24:00,082 INFO L73 IsDeterministic]: Start isDeterministic. Operand 76 states and 89 transitions. [2024-11-19 14:24:00,082 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:00,082 INFO L218 hiAutomatonCegarLoop]: Abstraction has 76 states and 89 transitions. [2024-11-19 14:24:00,082 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states and 89 transitions. [2024-11-19 14:24:00,083 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 72. [2024-11-19 14:24:00,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 72 states, 72 states have (on average 1.1666666666666667) internal successors, (84), 71 states have internal predecessors, (84), 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-19 14:24:00,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 84 transitions. [2024-11-19 14:24:00,084 INFO L240 hiAutomatonCegarLoop]: Abstraction has 72 states and 84 transitions. [2024-11-19 14:24:00,084 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:00,084 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-19 14:24:00,084 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=17, Unknown=0, NotChecked=0, Total=30 [2024-11-19 14:24:00,085 INFO L87 Difference]: Start difference. First operand 72 states and 84 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 5 states have internal predecessors, (21), 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-19 14:24:00,107 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:00,107 INFO L93 Difference]: Finished difference Result 105 states and 126 transitions. [2024-11-19 14:24:00,107 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 105 states and 126 transitions. [2024-11-19 14:24:00,108 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 12 [2024-11-19 14:24:00,108 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 105 states to 105 states and 126 transitions. [2024-11-19 14:24:00,108 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 51 [2024-11-19 14:24:00,108 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 51 [2024-11-19 14:24:00,108 INFO L73 IsDeterministic]: Start isDeterministic. Operand 105 states and 126 transitions. [2024-11-19 14:24:00,108 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:00,108 INFO L218 hiAutomatonCegarLoop]: Abstraction has 105 states and 126 transitions. [2024-11-19 14:24:00,109 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 105 states and 126 transitions. [2024-11-19 14:24:00,109 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 105 to 72. [2024-11-19 14:24:00,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 72 states, 72 states have (on average 1.1388888888888888) internal successors, (82), 71 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-19 14:24:00,110 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 82 transitions. [2024-11-19 14:24:00,110 INFO L240 hiAutomatonCegarLoop]: Abstraction has 72 states and 82 transitions. [2024-11-19 14:24:00,111 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-19 14:24:00,111 INFO L425 stractBuchiCegarLoop]: Abstraction has 72 states and 82 transitions. [2024-11-19 14:24:00,111 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-11-19 14:24:00,111 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 72 states and 82 transitions. [2024-11-19 14:24:00,111 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:00,112 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:00,112 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:00,112 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 5, 5, 5, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:00,112 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:00,112 INFO L745 eck$LassoCheckResult]: Stem: 3995#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 3983#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 3976#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 3977#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3991#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 3992#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 3993#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4012#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4011#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4010#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4009#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4008#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4006#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4005#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 3960#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 3961#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3988#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4025#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4024#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3968#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3969#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4026#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4022#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4021#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4019#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3966#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3967#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4017#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4007#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4002#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4003#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 3972#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 3973#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 3984#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4018#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3996#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3997#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3964#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3965#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3986#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3987#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4020#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3985#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3962#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 3963#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4016#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4014#L30-2 [2024-11-19 14:24:00,113 INFO L747 eck$LassoCheckResult]: Loop: 4014#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4015#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4013#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4014#L30-2 [2024-11-19 14:24:00,113 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:00,113 INFO L85 PathProgramCache]: Analyzing trace with hash -1458082658, now seen corresponding path program 1 times [2024-11-19 14:24:00,113 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:00,113 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [752387770] [2024-11-19 14:24:00,113 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:24:00,113 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:00,144 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unknown [2024-11-19 14:24:00,147 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [15824220] [2024-11-19 14:24:00,147 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:24:00,147 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:00,147 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:00,148 INFO L229 MonitoredProcess]: Starting monitored process 60 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:00,149 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (60)] Waiting until timeout for monitored process [2024-11-19 14:24:00,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:00,228 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:00,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:00,260 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:00,260 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:00,261 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 2 times [2024-11-19 14:24:00,261 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:00,261 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [942159893] [2024-11-19 14:24:00,261 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:24:00,261 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:00,264 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:24:00,264 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:00,264 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:00,265 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:00,266 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:00,266 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:00,266 INFO L85 PathProgramCache]: Analyzing trace with hash 1558822002, now seen corresponding path program 2 times [2024-11-19 14:24:00,266 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:00,266 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1705639743] [2024-11-19 14:24:00,266 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:24:00,267 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:00,284 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-19 14:24:00,284 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:00,473 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 23 proven. 25 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2024-11-19 14:24:00,474 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:00,474 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1705639743] [2024-11-19 14:24:00,474 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1705639743] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:00,474 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1745890791] [2024-11-19 14:24:00,474 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:24:00,474 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:00,474 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:00,476 INFO L229 MonitoredProcess]: Starting monitored process 61 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:00,477 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (61)] Waiting until timeout for monitored process [2024-11-19 14:24:00,549 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-19 14:24:00,549 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:00,550 INFO L255 TraceCheckSpWp]: Trace formula consists of 220 conjuncts, 14 conjuncts are in the unsatisfiable core [2024-11-19 14:24:00,550 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:00,735 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 35 proven. 25 refuted. 0 times theorem prover too weak. 35 trivial. 0 not checked. [2024-11-19 14:24:00,735 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:00,874 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 35 proven. 25 refuted. 0 times theorem prover too weak. 35 trivial. 0 not checked. [2024-11-19 14:24:00,875 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1745890791] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:00,875 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:00,875 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 14, 14] total 25 [2024-11-19 14:24:00,875 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1168054111] [2024-11-19 14:24:00,875 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:00,924 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:00,925 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2024-11-19 14:24:00,925 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=134, Invalid=516, Unknown=0, NotChecked=0, Total=650 [2024-11-19 14:24:00,925 INFO L87 Difference]: Start difference. First operand 72 states and 82 transitions. cyclomatic complexity: 17 Second operand has 26 states, 25 states have (on average 3.12) internal successors, (78), 26 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:24:01,593 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:01,593 INFO L93 Difference]: Finished difference Result 241 states and 268 transitions. [2024-11-19 14:24:01,594 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 241 states and 268 transitions. [2024-11-19 14:24:01,595 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 19 [2024-11-19 14:24:01,595 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 241 states to 154 states and 179 transitions. [2024-11-19 14:24:01,595 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 81 [2024-11-19 14:24:01,595 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 81 [2024-11-19 14:24:01,595 INFO L73 IsDeterministic]: Start isDeterministic. Operand 154 states and 179 transitions. [2024-11-19 14:24:01,596 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:01,596 INFO L218 hiAutomatonCegarLoop]: Abstraction has 154 states and 179 transitions. [2024-11-19 14:24:01,596 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states and 179 transitions. [2024-11-19 14:24:01,597 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 109. [2024-11-19 14:24:01,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 109 states, 109 states have (on average 1.1376146788990826) internal successors, (124), 108 states have internal predecessors, (124), 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-19 14:24:01,597 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 124 transitions. [2024-11-19 14:24:01,597 INFO L240 hiAutomatonCegarLoop]: Abstraction has 109 states and 124 transitions. [2024-11-19 14:24:01,598 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2024-11-19 14:24:01,598 INFO L425 stractBuchiCegarLoop]: Abstraction has 109 states and 124 transitions. [2024-11-19 14:24:01,598 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-11-19 14:24:01,598 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 109 states and 124 transitions. [2024-11-19 14:24:01,599 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2024-11-19 14:24:01,599 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:01,599 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:01,599 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 6, 6, 6, 6, 5, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:01,599 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:01,599 INFO L745 eck$LassoCheckResult]: Stem: 4676#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 4661#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 4650#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 4651#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4673#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4674#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4671#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4672#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4697#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4696#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4695#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4694#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4693#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4692#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 4686#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 4685#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 4635#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 4636#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4668#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4706#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4705#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4643#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4644#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4730#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4689#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4688#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4687#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4641#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4642#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4729#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4728#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4701#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4704#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4699#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4700#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4690#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 4691#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 4662#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 4663#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4637#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4638#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4727#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4639#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4640#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4731#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4716#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4717#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4711#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4712#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4723#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4718#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4719#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4702#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4703#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4707#L30-2 [2024-11-19 14:24:01,601 INFO L747 eck$LassoCheckResult]: Loop: 4707#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 4708#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4743#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4707#L30-2 [2024-11-19 14:24:01,601 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:01,602 INFO L85 PathProgramCache]: Analyzing trace with hash -1976417725, now seen corresponding path program 3 times [2024-11-19 14:24:01,602 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:01,602 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [943230782] [2024-11-19 14:24:01,602 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:24:01,602 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:01,630 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2024-11-19 14:24:01,630 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:01,779 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 2 proven. 33 refuted. 0 times theorem prover too weak. 87 trivial. 0 not checked. [2024-11-19 14:24:01,779 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:01,779 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [943230782] [2024-11-19 14:24:01,779 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [943230782] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:01,779 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2105613684] [2024-11-19 14:24:01,779 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:24:01,780 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:01,780 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:01,781 INFO L229 MonitoredProcess]: Starting monitored process 62 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:01,782 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (62)] Waiting until timeout for monitored process [2024-11-19 14:24:01,876 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2024-11-19 14:24:01,876 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:01,877 INFO L255 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-19 14:24:01,878 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:02,022 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 1 proven. 34 refuted. 0 times theorem prover too weak. 87 trivial. 0 not checked. [2024-11-19 14:24:02,022 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:02,133 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 5 proven. 30 refuted. 0 times theorem prover too weak. 87 trivial. 0 not checked. [2024-11-19 14:24:02,133 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2105613684] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:02,133 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:02,133 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 8] total 20 [2024-11-19 14:24:02,133 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1370796865] [2024-11-19 14:24:02,134 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:02,134 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:02,134 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:02,134 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 3 times [2024-11-19 14:24:02,134 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:02,134 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1830713341] [2024-11-19 14:24:02,134 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:24:02,134 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:02,137 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-19 14:24:02,137 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:02,137 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:02,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:02,139 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:02,193 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:02,194 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2024-11-19 14:24:02,194 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=300, Unknown=0, NotChecked=0, Total=420 [2024-11-19 14:24:02,194 INFO L87 Difference]: Start difference. First operand 109 states and 124 transitions. cyclomatic complexity: 25 Second operand has 21 states, 20 states have (on average 3.5) internal successors, (70), 21 states have internal predecessors, (70), 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-19 14:24:02,397 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:02,397 INFO L93 Difference]: Finished difference Result 181 states and 201 transitions. [2024-11-19 14:24:02,397 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 181 states and 201 transitions. [2024-11-19 14:24:02,398 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 10 [2024-11-19 14:24:02,398 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 181 states to 164 states and 184 transitions. [2024-11-19 14:24:02,398 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 98 [2024-11-19 14:24:02,399 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 101 [2024-11-19 14:24:02,399 INFO L73 IsDeterministic]: Start isDeterministic. Operand 164 states and 184 transitions. [2024-11-19 14:24:02,399 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:02,399 INFO L218 hiAutomatonCegarLoop]: Abstraction has 164 states and 184 transitions. [2024-11-19 14:24:02,399 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states and 184 transitions. [2024-11-19 14:24:02,400 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 122. [2024-11-19 14:24:02,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 122 states, 122 states have (on average 1.139344262295082) internal successors, (139), 121 states have internal predecessors, (139), 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-19 14:24:02,401 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 122 states to 122 states and 139 transitions. [2024-11-19 14:24:02,401 INFO L240 hiAutomatonCegarLoop]: Abstraction has 122 states and 139 transitions. [2024-11-19 14:24:02,401 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2024-11-19 14:24:02,401 INFO L425 stractBuchiCegarLoop]: Abstraction has 122 states and 139 transitions. [2024-11-19 14:24:02,401 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-11-19 14:24:02,401 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 122 states and 139 transitions. [2024-11-19 14:24:02,402 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2024-11-19 14:24:02,402 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:02,402 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:02,402 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [6, 6, 5, 5, 5, 5, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:02,403 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:02,403 INFO L745 eck$LassoCheckResult]: Stem: 5313#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 5303#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 5294#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 5295#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5309#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5310#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5311#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5325#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5324#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5323#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5322#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5321#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5320#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5319#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5318#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5317#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 5276#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 5277#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5342#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5341#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5340#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5339#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5338#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5337#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5336#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5335#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5332#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5331#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5330#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5326#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5327#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5285#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5306#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 5289#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 5290#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 5304#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5278#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5279#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5314#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5379#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5315#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5305#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5280#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5281#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5362#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5378#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5377#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5350#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5347#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5346#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5345#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 5312#L29-9 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 5292#rangesum_returnLabel#2 main_#t~ret9#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret2~0#1 := main_#t~ret9#1;havoc main_#t~ret9#1;call main_#t~mem10#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem10#1;havoc main_#t~mem10#1;main_~i~2#1 := 0; 5293#L57-3 assume !(main_~i~2#1 < ~N~0 - 1); 5287#L57-4 havoc main_~i~2#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, main_~#x~0#1.offset + 4 * (~N~0 - 1), 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 5288#L29-13 [2024-11-19 14:24:02,403 INFO L747 eck$LassoCheckResult]: Loop: 5288#L29-13 assume !!(rangesum_~i~1#1 < ~N~0); 5291#L30-4 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5296#L29-12 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5288#L29-13 [2024-11-19 14:24:02,403 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:02,404 INFO L85 PathProgramCache]: Analyzing trace with hash -1725320802, now seen corresponding path program 1 times [2024-11-19 14:24:02,404 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:02,404 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1609185451] [2024-11-19 14:24:02,404 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:24:02,404 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:02,430 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:24:02,474 INFO L134 CoverageAnalysis]: Checked inductivity of 106 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 106 trivial. 0 not checked. [2024-11-19 14:24:02,475 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:02,475 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1609185451] [2024-11-19 14:24:02,475 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1609185451] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-19 14:24:02,475 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-19 14:24:02,475 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-19 14:24:02,475 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [500997525] [2024-11-19 14:24:02,475 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-19 14:24:02,476 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:02,476 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:02,476 INFO L85 PathProgramCache]: Analyzing trace with hash 120316, now seen corresponding path program 1 times [2024-11-19 14:24:02,476 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:02,476 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [371110560] [2024-11-19 14:24:02,476 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-19 14:24:02,476 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:02,478 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:02,478 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:02,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:02,480 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:02,505 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:24:02,505 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:24:02,505 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:24:02,505 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:24:02,505 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-19 14:24:02,506 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:24:02,506 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:24:02,506 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:24:02,506 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration16_Loop [2024-11-19 14:24:02,506 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:24:02,506 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:24:02,506 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:24:02,508 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:24:02,548 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:24:02,551 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-19 14:24:02,552 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:24:02,552 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:02,553 INFO L229 MonitoredProcess]: Starting monitored process 63 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:24:02,554 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Waiting until timeout for monitored process [2024-11-19 14:24:02,555 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-19 14:24:02,556 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:24:02,567 INFO L398 LassoAnalysis]: Proved nontermination for one component. [2024-11-19 14:24:02,567 INFO L401 LassoAnalysis]: Non-Termination argument consisting of: Initial state: {ULTIMATE.start_rangesum_#t~post4#1=0} Honda state: {ULTIMATE.start_rangesum_#t~post4#1=0} Generalized eigenvectors: [] Lambdas: [] Nus: [] [2024-11-19 14:24:02,577 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Ended with exit code 0 [2024-11-19 14:24:02,577 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:24:02,578 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:02,579 INFO L229 MonitoredProcess]: Starting monitored process 64 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:24:02,580 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Waiting until timeout for monitored process [2024-11-19 14:24:02,580 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-19 14:24:02,580 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:24:02,601 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Forceful destruction successful, exit code 0 [2024-11-19 14:24:02,601 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:24:02,601 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:02,603 INFO L229 MonitoredProcess]: Starting monitored process 65 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:24:02,604 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Waiting until timeout for monitored process [2024-11-19 14:24:02,604 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-19 14:24:02,604 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-19 14:24:02,719 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-19 14:24:02,724 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Ended with exit code 0 [2024-11-19 14:24:02,724 INFO L204 LassoAnalysis]: Preferences: [2024-11-19 14:24:02,724 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-19 14:24:02,724 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-19 14:24:02,724 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-19 14:24:02,724 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-19 14:24:02,724 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:24:02,724 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-19 14:24:02,724 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-19 14:24:02,724 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration16_Loop [2024-11-19 14:24:02,724 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-19 14:24:02,724 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-19 14:24:02,725 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:24:02,731 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-19 14:24:02,761 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-19 14:24:02,761 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-19 14:24:02,761 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:24:02,761 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:02,763 INFO L229 MonitoredProcess]: Starting monitored process 66 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:24:02,765 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Waiting until timeout for monitored process [2024-11-19 14:24:02,766 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of 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-19 14:24:02,775 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-19 14:24:02,775 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-19 14:24:02,776 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-19 14:24:02,776 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-19 14:24:02,776 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-19 14:24:02,776 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-19 14:24:02,776 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-19 14:24:02,778 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-19 14:24:02,781 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2024-11-19 14:24:02,781 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-19 14:24:02,781 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-19 14:24:02,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:02,783 INFO L229 MonitoredProcess]: Starting monitored process 67 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-19 14:24:02,784 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Waiting until timeout for monitored process [2024-11-19 14:24:02,784 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-19 14:24:02,784 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-19 14:24:02,784 INFO L474 LassoAnalysis]: Proved termination. [2024-11-19 14:24:02,784 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_rangesum_~i~1#1, ~N~0) = -4*ULTIMATE.start_rangesum_~i~1#1 + 3*~N~0 Supporting invariants [] [2024-11-19 14:24:02,794 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Forceful destruction successful, exit code 0 [2024-11-19 14:24:02,795 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-19 14:24:02,804 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:02,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:24:02,842 INFO L255 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-19 14:24:02,843 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:02,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:24:02,887 WARN L253 TraceCheckSpWp]: Trace formula consists of 6 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-19 14:24:02,887 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:02,919 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-19 14:24:02,919 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 3 loop predicates [2024-11-19 14:24:02,919 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 122 states and 139 transitions. cyclomatic complexity: 27 Second operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 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-19 14:24:02,947 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 122 states and 139 transitions. cyclomatic complexity: 27. Second operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 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) Result 139 states and 160 transitions. Complement of second has 8 states. [2024-11-19 14:24:02,947 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 5 states 1 stem states 3 non-accepting loop states 1 accepting loop states [2024-11-19 14:24:02,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.5) internal successors, (26), 4 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-19 14:24:02,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 31 transitions. [2024-11-19 14:24:02,948 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 31 transitions. Stem has 55 letters. Loop has 3 letters. [2024-11-19 14:24:02,948 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:24:02,948 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 31 transitions. Stem has 58 letters. Loop has 3 letters. [2024-11-19 14:24:02,948 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:24:02,948 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 31 transitions. Stem has 55 letters. Loop has 6 letters. [2024-11-19 14:24:02,948 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-19 14:24:02,948 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 139 states and 160 transitions. [2024-11-19 14:24:02,949 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:02,949 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 139 states to 95 states and 106 transitions. [2024-11-19 14:24:02,949 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32 [2024-11-19 14:24:02,949 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 33 [2024-11-19 14:24:02,949 INFO L73 IsDeterministic]: Start isDeterministic. Operand 95 states and 106 transitions. [2024-11-19 14:24:02,949 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:02,949 INFO L218 hiAutomatonCegarLoop]: Abstraction has 95 states and 106 transitions. [2024-11-19 14:24:02,950 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states and 106 transitions. [2024-11-19 14:24:02,950 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 94. [2024-11-19 14:24:02,950 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 94 states have (on average 1.1170212765957446) internal successors, (105), 93 states have internal predecessors, (105), 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-19 14:24:02,951 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 105 transitions. [2024-11-19 14:24:02,951 INFO L240 hiAutomatonCegarLoop]: Abstraction has 94 states and 105 transitions. [2024-11-19 14:24:02,951 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:02,951 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-19 14:24:02,951 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2024-11-19 14:24:02,952 INFO L87 Difference]: Start difference. First operand 94 states and 105 transitions. Second operand has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:24:02,979 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:02,979 INFO L93 Difference]: Finished difference Result 95 states and 105 transitions. [2024-11-19 14:24:02,979 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 95 states and 105 transitions. [2024-11-19 14:24:02,979 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:02,980 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 95 states to 95 states and 105 transitions. [2024-11-19 14:24:02,980 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32 [2024-11-19 14:24:02,980 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32 [2024-11-19 14:24:02,980 INFO L73 IsDeterministic]: Start isDeterministic. Operand 95 states and 105 transitions. [2024-11-19 14:24:02,980 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:02,980 INFO L218 hiAutomatonCegarLoop]: Abstraction has 95 states and 105 transitions. [2024-11-19 14:24:02,980 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states and 105 transitions. [2024-11-19 14:24:02,981 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 94. [2024-11-19 14:24:02,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 94 states have (on average 1.1063829787234043) internal successors, (104), 93 states have internal predecessors, (104), 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-19 14:24:02,982 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 104 transitions. [2024-11-19 14:24:02,982 INFO L240 hiAutomatonCegarLoop]: Abstraction has 94 states and 104 transitions. [2024-11-19 14:24:02,982 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-19 14:24:02,983 INFO L425 stractBuchiCegarLoop]: Abstraction has 94 states and 104 transitions. [2024-11-19 14:24:02,983 INFO L332 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2024-11-19 14:24:02,983 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 94 states and 104 transitions. [2024-11-19 14:24:02,983 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:02,984 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:02,984 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:02,988 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 7, 6, 6, 6, 4, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:02,988 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:02,988 INFO L745 eck$LassoCheckResult]: Stem: 5963#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 5952#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 5945#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 5946#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5959#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5960#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5961#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5987#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5984#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5983#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5982#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5980#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5978#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5977#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 5973#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 5972#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 5926#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 5927#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5936#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5937#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5957#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5958#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6013#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6012#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6010#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6007#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6008#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5993#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5992#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5990#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5934#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5935#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5981#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5979#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5975#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5976#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5974#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5970#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5971#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 5941#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 5942#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 5953#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5928#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5929#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5964#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6015#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6014#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5956#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5930#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5931#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6018#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6004#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6003#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5954#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5955#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6001#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6000#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5999#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5998#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5997#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5995#L30-2 [2024-11-19 14:24:02,988 INFO L747 eck$LassoCheckResult]: Loop: 5995#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 5996#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5994#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5995#L30-2 [2024-11-19 14:24:02,988 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:02,989 INFO L85 PathProgramCache]: Analyzing trace with hash 380293024, now seen corresponding path program 4 times [2024-11-19 14:24:02,989 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:02,989 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [956154775] [2024-11-19 14:24:02,989 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:24:02,989 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:03,008 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:24:03,008 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:03,219 INFO L134 CoverageAnalysis]: Checked inductivity of 157 backedges. 70 proven. 36 refuted. 0 times theorem prover too weak. 51 trivial. 0 not checked. [2024-11-19 14:24:03,220 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:03,220 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [956154775] [2024-11-19 14:24:03,220 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [956154775] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:03,220 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2109609607] [2024-11-19 14:24:03,220 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:24:03,220 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:03,220 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:03,221 INFO L229 MonitoredProcess]: Starting monitored process 68 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:03,223 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (68)] Waiting until timeout for monitored process [2024-11-19 14:24:03,318 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:24:03,318 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:03,319 INFO L255 TraceCheckSpWp]: Trace formula consists of 251 conjuncts, 16 conjuncts are in the unsatisfiable core [2024-11-19 14:24:03,320 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:03,409 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Forceful destruction successful, exit code 0 [2024-11-19 14:24:03,492 INFO L134 CoverageAnalysis]: Checked inductivity of 157 backedges. 70 proven. 36 refuted. 0 times theorem prover too weak. 51 trivial. 0 not checked. [2024-11-19 14:24:03,492 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:03,606 INFO L134 CoverageAnalysis]: Checked inductivity of 157 backedges. 70 proven. 36 refuted. 0 times theorem prover too weak. 51 trivial. 0 not checked. [2024-11-19 14:24:03,606 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2109609607] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:03,606 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:03,606 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17, 17] total 24 [2024-11-19 14:24:03,606 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1019002611] [2024-11-19 14:24:03,606 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:03,607 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:03,607 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:03,607 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 4 times [2024-11-19 14:24:03,607 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:03,607 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1617322514] [2024-11-19 14:24:03,607 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:24:03,607 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:03,611 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:24:03,611 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:03,611 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:03,612 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:03,613 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:03,676 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:03,677 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2024-11-19 14:24:03,677 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=143, Invalid=409, Unknown=0, NotChecked=0, Total=552 [2024-11-19 14:24:03,677 INFO L87 Difference]: Start difference. First operand 94 states and 104 transitions. cyclomatic complexity: 18 Second operand has 24 states, 24 states have (on average 2.7083333333333335) internal successors, (65), 24 states have internal predecessors, (65), 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-19 14:24:03,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:03,794 INFO L93 Difference]: Finished difference Result 123 states and 133 transitions. [2024-11-19 14:24:03,794 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 123 states and 133 transitions. [2024-11-19 14:24:03,794 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:03,795 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 123 states to 97 states and 107 transitions. [2024-11-19 14:24:03,795 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 32 [2024-11-19 14:24:03,795 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 32 [2024-11-19 14:24:03,795 INFO L73 IsDeterministic]: Start isDeterministic. Operand 97 states and 107 transitions. [2024-11-19 14:24:03,795 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:03,796 INFO L218 hiAutomatonCegarLoop]: Abstraction has 97 states and 107 transitions. [2024-11-19 14:24:03,796 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states and 107 transitions. [2024-11-19 14:24:03,797 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 96. [2024-11-19 14:24:03,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 96 states have (on average 1.1041666666666667) internal successors, (106), 95 states have internal predecessors, (106), 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-19 14:24:03,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 106 transitions. [2024-11-19 14:24:03,797 INFO L240 hiAutomatonCegarLoop]: Abstraction has 96 states and 106 transitions. [2024-11-19 14:24:03,798 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2024-11-19 14:24:03,798 INFO L425 stractBuchiCegarLoop]: Abstraction has 96 states and 106 transitions. [2024-11-19 14:24:03,798 INFO L332 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2024-11-19 14:24:03,798 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 96 states and 106 transitions. [2024-11-19 14:24:03,799 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:03,799 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:03,799 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:03,800 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [7, 7, 7, 7, 7, 6, 4, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:03,800 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:03,800 INFO L745 eck$LassoCheckResult]: Stem: 6560#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 6551#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 6541#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 6542#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6556#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6557#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6558#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6602#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6600#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6597#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6595#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6593#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6591#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6589#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6587#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6586#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 6567#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 6566#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 6524#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 6525#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6554#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6611#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6610#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6609#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6608#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6555#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6532#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6533#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6565#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6574#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6573#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6568#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6530#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6531#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6576#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6575#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6571#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6572#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 6570#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6563#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6564#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 6536#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 6537#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 6552#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6526#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6527#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6553#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6528#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6529#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6561#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6607#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6604#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6603#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6601#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 6598#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6596#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6594#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6592#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6590#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6588#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6585#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6584#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6582#L30-2 [2024-11-19 14:24:03,800 INFO L747 eck$LassoCheckResult]: Loop: 6582#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 6583#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 6581#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 6582#L30-2 [2024-11-19 14:24:03,801 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:03,801 INFO L85 PathProgramCache]: Analyzing trace with hash 466985150, now seen corresponding path program 5 times [2024-11-19 14:24:03,801 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:03,801 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [873140230] [2024-11-19 14:24:03,801 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:24:03,801 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:03,838 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2024-11-19 14:24:03,838 INFO L228 tOrderPrioritization]: Conjunction of SSA is unknown [2024-11-19 14:24:03,839 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [500521] [2024-11-19 14:24:03,839 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:24:03,839 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:03,840 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:03,841 INFO L229 MonitoredProcess]: Starting monitored process 69 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:03,842 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (69)] Waiting until timeout for monitored process [2024-11-19 14:24:03,955 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2024-11-19 14:24:03,955 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:03,955 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:03,985 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:04,002 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:04,002 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:04,002 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 5 times [2024-11-19 14:24:04,003 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:04,003 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1384907801] [2024-11-19 14:24:04,003 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:24:04,003 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:04,005 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:24:04,005 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:04,006 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:04,006 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:04,008 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:04,008 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:04,008 INFO L85 PathProgramCache]: Analyzing trace with hash 555586642, now seen corresponding path program 6 times [2024-11-19 14:24:04,008 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:04,008 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1084694886] [2024-11-19 14:24:04,008 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:24:04,008 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:04,033 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2024-11-19 14:24:04,034 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:04,321 INFO L134 CoverageAnalysis]: Checked inductivity of 189 backedges. 51 proven. 82 refuted. 0 times theorem prover too weak. 56 trivial. 0 not checked. [2024-11-19 14:24:04,321 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:04,321 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1084694886] [2024-11-19 14:24:04,321 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1084694886] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:04,321 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [12134711] [2024-11-19 14:24:04,322 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:24:04,322 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:04,322 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:04,323 INFO L229 MonitoredProcess]: Starting monitored process 70 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:04,324 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (70)] Waiting until timeout for monitored process [2024-11-19 14:24:04,499 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2024-11-19 14:24:04,499 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:04,501 INFO L255 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-11-19 14:24:04,501 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:04,791 INFO L134 CoverageAnalysis]: Checked inductivity of 189 backedges. 70 proven. 70 refuted. 0 times theorem prover too weak. 49 trivial. 0 not checked. [2024-11-19 14:24:04,791 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:04,962 INFO L134 CoverageAnalysis]: Checked inductivity of 189 backedges. 70 proven. 70 refuted. 0 times theorem prover too weak. 49 trivial. 0 not checked. [2024-11-19 14:24:04,962 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [12134711] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:04,962 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:04,962 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 18, 18] total 33 [2024-11-19 14:24:04,962 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1620930024] [2024-11-19 14:24:04,962 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:05,005 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:05,005 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2024-11-19 14:24:05,006 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=276, Invalid=846, Unknown=0, NotChecked=0, Total=1122 [2024-11-19 14:24:05,006 INFO L87 Difference]: Start difference. First operand 96 states and 106 transitions. cyclomatic complexity: 18 Second operand has 34 states, 33 states have (on average 3.0303030303030303) internal successors, (100), 34 states have internal predecessors, (100), 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-19 14:24:05,821 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:05,821 INFO L93 Difference]: Finished difference Result 594 states and 677 transitions. [2024-11-19 14:24:05,821 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 594 states and 677 transitions. [2024-11-19 14:24:05,823 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:05,824 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 594 states to 255 states and 287 transitions. [2024-11-19 14:24:05,824 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 93 [2024-11-19 14:24:05,824 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 152 [2024-11-19 14:24:05,824 INFO L73 IsDeterministic]: Start isDeterministic. Operand 255 states and 287 transitions. [2024-11-19 14:24:05,824 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:05,824 INFO L218 hiAutomatonCegarLoop]: Abstraction has 255 states and 287 transitions. [2024-11-19 14:24:05,825 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 255 states and 287 transitions. [2024-11-19 14:24:05,826 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 255 to 218. [2024-11-19 14:24:05,827 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 218 states, 218 states have (on average 1.1376146788990826) internal successors, (248), 217 states have internal predecessors, (248), 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-19 14:24:05,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 218 states to 218 states and 248 transitions. [2024-11-19 14:24:05,827 INFO L240 hiAutomatonCegarLoop]: Abstraction has 218 states and 248 transitions. [2024-11-19 14:24:05,827 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 49 states. [2024-11-19 14:24:05,828 INFO L425 stractBuchiCegarLoop]: Abstraction has 218 states and 248 transitions. [2024-11-19 14:24:05,828 INFO L332 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2024-11-19 14:24:05,828 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 218 states and 248 transitions. [2024-11-19 14:24:05,829 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:05,829 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:05,829 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:05,829 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 10, 8, 8, 8, 7, 7, 5, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:05,829 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:05,829 INFO L745 eck$LassoCheckResult]: Stem: 7739#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 7728#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 7720#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 7721#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7735#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7736#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7737#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7759#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7757#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7756#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7755#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7754#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7753#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7752#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7751#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7749#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 7746#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 7745#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 7699#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 7700#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7817#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7744#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7734#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7709#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7710#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7816#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7815#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7814#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7813#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7812#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7811#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7810#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7809#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7808#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7806#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7807#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7906#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7905#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7903#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7901#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7900#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7899#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7780#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7760#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 7713#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 7714#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 7729#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7890#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7889#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7888#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7887#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7886#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7885#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7884#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7883#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7882#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7881#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7880#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7879#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7878#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7876#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7873#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7871#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7869#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7731#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7703#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7705#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7742#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7897#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7874#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7872#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7870#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7868#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7866#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7864#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7862#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7860#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7830#L30-2 [2024-11-19 14:24:05,830 INFO L747 eck$LassoCheckResult]: Loop: 7830#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 7855#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7829#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7830#L30-2 [2024-11-19 14:24:05,830 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:05,830 INFO L85 PathProgramCache]: Analyzing trace with hash -1731509455, now seen corresponding path program 7 times [2024-11-19 14:24:05,830 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:05,830 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [351893560] [2024-11-19 14:24:05,830 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-19 14:24:05,830 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:05,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:24:06,097 INFO L134 CoverageAnalysis]: Checked inductivity of 286 backedges. 73 proven. 68 refuted. 0 times theorem prover too weak. 145 trivial. 0 not checked. [2024-11-19 14:24:06,097 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:06,098 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [351893560] [2024-11-19 14:24:06,098 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [351893560] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:06,098 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [579779212] [2024-11-19 14:24:06,098 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-19 14:24:06,098 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:06,098 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:06,100 INFO L229 MonitoredProcess]: Starting monitored process 71 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:06,101 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (71)] Waiting until timeout for monitored process [2024-11-19 14:24:06,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:24:06,210 INFO L255 TraceCheckSpWp]: Trace formula consists of 282 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-11-19 14:24:06,211 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:06,393 INFO L134 CoverageAnalysis]: Checked inductivity of 286 backedges. 92 proven. 49 refuted. 0 times theorem prover too weak. 145 trivial. 0 not checked. [2024-11-19 14:24:06,394 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:06,512 INFO L134 CoverageAnalysis]: Checked inductivity of 286 backedges. 92 proven. 49 refuted. 0 times theorem prover too weak. 145 trivial. 0 not checked. [2024-11-19 14:24:06,512 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [579779212] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:06,512 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:06,512 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 19, 19] total 29 [2024-11-19 14:24:06,512 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [491727005] [2024-11-19 14:24:06,512 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:06,513 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:06,513 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:06,513 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 6 times [2024-11-19 14:24:06,513 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:06,513 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [731748281] [2024-11-19 14:24:06,513 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:24:06,513 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:06,516 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-19 14:24:06,517 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:06,517 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:06,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:06,519 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:06,573 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:06,574 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2024-11-19 14:24:06,574 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=194, Invalid=618, Unknown=0, NotChecked=0, Total=812 [2024-11-19 14:24:06,574 INFO L87 Difference]: Start difference. First operand 218 states and 248 transitions. cyclomatic complexity: 38 Second operand has 29 states, 29 states have (on average 2.7586206896551726) internal successors, (80), 29 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:24:06,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:06,710 INFO L93 Difference]: Finished difference Result 236 states and 266 transitions. [2024-11-19 14:24:06,711 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 236 states and 266 transitions. [2024-11-19 14:24:06,712 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:06,713 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 236 states to 221 states and 251 transitions. [2024-11-19 14:24:06,713 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 118 [2024-11-19 14:24:06,714 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 118 [2024-11-19 14:24:06,714 INFO L73 IsDeterministic]: Start isDeterministic. Operand 221 states and 251 transitions. [2024-11-19 14:24:06,714 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:06,714 INFO L218 hiAutomatonCegarLoop]: Abstraction has 221 states and 251 transitions. [2024-11-19 14:24:06,714 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 221 states and 251 transitions. [2024-11-19 14:24:06,716 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 221 to 220. [2024-11-19 14:24:06,716 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 220 states, 220 states have (on average 1.1363636363636365) internal successors, (250), 219 states have internal predecessors, (250), 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-19 14:24:06,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 220 states to 220 states and 250 transitions. [2024-11-19 14:24:06,716 INFO L240 hiAutomatonCegarLoop]: Abstraction has 220 states and 250 transitions. [2024-11-19 14:24:06,717 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2024-11-19 14:24:06,717 INFO L425 stractBuchiCegarLoop]: Abstraction has 220 states and 250 transitions. [2024-11-19 14:24:06,717 INFO L332 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2024-11-19 14:24:06,717 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 220 states and 250 transitions. [2024-11-19 14:24:06,718 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:06,718 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:06,718 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:06,718 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 10, 8, 8, 8, 8, 8, 5, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:06,718 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:06,718 INFO L745 eck$LassoCheckResult]: Stem: 8679#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 8668#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 8658#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 8659#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8675#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8676#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8677#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8718#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8715#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8713#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8710#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8708#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8706#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8704#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8702#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8701#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8699#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8695#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 8687#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 8686#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 8641#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 8642#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8763#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8761#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8674#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8649#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8650#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8685#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8758#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8757#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8756#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8755#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8754#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8753#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8752#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8751#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8749#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8750#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8782#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8781#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8772#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8770#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8768#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8766#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8694#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8693#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 8653#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 8654#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 8669#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8852#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8680#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8671#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8645#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8646#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8681#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8860#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8859#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8858#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8857#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8842#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8841#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8839#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8819#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8820#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8838#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8835#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8836#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8837#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8834#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8832#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8829#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8830#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8853#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8851#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8850#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8848#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8846#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8844#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8843#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8788#L30-2 [2024-11-19 14:24:06,719 INFO L747 eck$LassoCheckResult]: Loop: 8788#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 8786#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8787#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8788#L30-2 [2024-11-19 14:24:06,719 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:06,719 INFO L85 PathProgramCache]: Analyzing trace with hash 1872040403, now seen corresponding path program 8 times [2024-11-19 14:24:06,719 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:06,719 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1538827160] [2024-11-19 14:24:06,719 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:24:06,719 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:06,738 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-19 14:24:06,738 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:07,311 INFO L134 CoverageAnalysis]: Checked inductivity of 301 backedges. 120 proven. 134 refuted. 0 times theorem prover too weak. 47 trivial. 0 not checked. [2024-11-19 14:24:07,311 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:07,311 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1538827160] [2024-11-19 14:24:07,311 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1538827160] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:07,311 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [361757751] [2024-11-19 14:24:07,311 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:24:07,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:07,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:07,314 INFO L229 MonitoredProcess]: Starting monitored process 72 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:07,315 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (72)] Waiting until timeout for monitored process [2024-11-19 14:24:07,416 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-19 14:24:07,416 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:07,418 INFO L255 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 20 conjuncts are in the unsatisfiable core [2024-11-19 14:24:07,419 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:07,885 INFO L134 CoverageAnalysis]: Checked inductivity of 301 backedges. 142 proven. 64 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2024-11-19 14:24:07,885 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:08,325 INFO L134 CoverageAnalysis]: Checked inductivity of 301 backedges. 142 proven. 64 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2024-11-19 14:24:08,326 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [361757751] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:08,326 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:08,326 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 21, 21] total 53 [2024-11-19 14:24:08,326 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1530183992] [2024-11-19 14:24:08,326 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:08,326 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:08,326 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:08,326 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 7 times [2024-11-19 14:24:08,326 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:08,326 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1084332511] [2024-11-19 14:24:08,326 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-19 14:24:08,327 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:08,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:08,329 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:08,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:08,331 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:08,382 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:08,382 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 53 interpolants. [2024-11-19 14:24:08,383 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=422, Invalid=2334, Unknown=0, NotChecked=0, Total=2756 [2024-11-19 14:24:08,383 INFO L87 Difference]: Start difference. First operand 220 states and 250 transitions. cyclomatic complexity: 38 Second operand has 53 states, 53 states have (on average 2.6037735849056602) internal successors, (138), 53 states have internal predecessors, (138), 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-19 14:24:09,002 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:09,002 INFO L93 Difference]: Finished difference Result 317 states and 340 transitions. [2024-11-19 14:24:09,002 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 317 states and 340 transitions. [2024-11-19 14:24:09,004 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:09,004 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 317 states to 197 states and 216 transitions. [2024-11-19 14:24:09,004 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 96 [2024-11-19 14:24:09,004 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 96 [2024-11-19 14:24:09,005 INFO L73 IsDeterministic]: Start isDeterministic. Operand 197 states and 216 transitions. [2024-11-19 14:24:09,005 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:09,005 INFO L218 hiAutomatonCegarLoop]: Abstraction has 197 states and 216 transitions. [2024-11-19 14:24:09,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states and 216 transitions. [2024-11-19 14:24:09,007 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 184. [2024-11-19 14:24:09,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 184 states, 184 states have (on average 1.1032608695652173) internal successors, (203), 183 states have internal predecessors, (203), 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-19 14:24:09,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 184 states to 184 states and 203 transitions. [2024-11-19 14:24:09,008 INFO L240 hiAutomatonCegarLoop]: Abstraction has 184 states and 203 transitions. [2024-11-19 14:24:09,010 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2024-11-19 14:24:09,011 INFO L425 stractBuchiCegarLoop]: Abstraction has 184 states and 203 transitions. [2024-11-19 14:24:09,011 INFO L332 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2024-11-19 14:24:09,011 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 184 states and 203 transitions. [2024-11-19 14:24:09,011 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:09,011 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:09,012 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:09,012 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [11, 10, 9, 9, 8, 8, 8, 5, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:09,012 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:09,012 INFO L745 eck$LassoCheckResult]: Stem: 9758#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 9747#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 9737#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 9738#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9754#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9755#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9756#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9786#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9785#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9784#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9783#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9782#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9781#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9780#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9779#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9778#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9777#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9776#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9775#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9774#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 9766#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 9765#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 9720#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 9721#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9816#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9814#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9753#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9728#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9729#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9764#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9811#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9810#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9809#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9808#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9807#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9806#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9805#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9804#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9802#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9803#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9901#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9900#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9899#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9898#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9897#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9896#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9769#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9768#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 9732#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 9733#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 9748#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9887#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9885#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9883#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9881#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9879#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9877#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9875#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9874#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9872#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9870#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9868#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9866#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9864#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9861#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9862#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9724#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9725#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9760#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9889#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9888#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9750#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9751#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9873#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9871#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9869#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9867#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9865#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9863#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9860#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9858#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9840#L30-2 [2024-11-19 14:24:09,013 INFO L747 eck$LassoCheckResult]: Loop: 9840#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 9855#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9839#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9840#L30-2 [2024-11-19 14:24:09,013 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:09,013 INFO L85 PathProgramCache]: Analyzing trace with hash -1155153931, now seen corresponding path program 9 times [2024-11-19 14:24:09,013 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:09,013 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [379095157] [2024-11-19 14:24:09,013 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:24:09,014 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:09,062 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) [2024-11-19 14:24:09,062 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:09,340 INFO L134 CoverageAnalysis]: Checked inductivity of 318 backedges. 49 proven. 98 refuted. 0 times theorem prover too weak. 171 trivial. 0 not checked. [2024-11-19 14:24:09,340 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:09,340 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [379095157] [2024-11-19 14:24:09,340 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [379095157] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:09,340 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [220726887] [2024-11-19 14:24:09,340 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:24:09,341 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:09,341 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:09,342 INFO L229 MonitoredProcess]: Starting monitored process 73 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:09,343 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (73)] Waiting until timeout for monitored process [2024-11-19 14:24:09,495 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 10 check-sat command(s) [2024-11-19 14:24:09,495 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:09,497 INFO L255 TraceCheckSpWp]: Trace formula consists of 300 conjuncts, 20 conjuncts are in the unsatisfiable core [2024-11-19 14:24:09,498 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:09,763 INFO L134 CoverageAnalysis]: Checked inductivity of 318 backedges. 64 proven. 109 refuted. 0 times theorem prover too weak. 145 trivial. 0 not checked. [2024-11-19 14:24:09,763 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:10,032 INFO L134 CoverageAnalysis]: Checked inductivity of 318 backedges. 64 proven. 109 refuted. 0 times theorem prover too weak. 145 trivial. 0 not checked. [2024-11-19 14:24:10,032 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [220726887] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:10,032 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:10,032 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 21, 21] total 43 [2024-11-19 14:24:10,032 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1852688839] [2024-11-19 14:24:10,033 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:10,033 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:10,033 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:10,033 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 8 times [2024-11-19 14:24:10,033 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:10,033 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1088965081] [2024-11-19 14:24:10,033 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:24:10,033 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:10,036 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:24:10,036 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:10,036 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:10,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:10,038 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:10,095 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:10,095 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 43 interpolants. [2024-11-19 14:24:10,095 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=364, Invalid=1442, Unknown=0, NotChecked=0, Total=1806 [2024-11-19 14:24:10,096 INFO L87 Difference]: Start difference. First operand 184 states and 203 transitions. cyclomatic complexity: 27 Second operand has 43 states, 43 states have (on average 2.604651162790698) internal successors, (112), 43 states have internal predecessors, (112), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:24:10,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:10,548 INFO L93 Difference]: Finished difference Result 249 states and 272 transitions. [2024-11-19 14:24:10,548 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 249 states and 272 transitions. [2024-11-19 14:24:10,549 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:10,550 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 249 states to 244 states and 265 transitions. [2024-11-19 14:24:10,550 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 127 [2024-11-19 14:24:10,550 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 127 [2024-11-19 14:24:10,550 INFO L73 IsDeterministic]: Start isDeterministic. Operand 244 states and 265 transitions. [2024-11-19 14:24:10,550 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:10,550 INFO L218 hiAutomatonCegarLoop]: Abstraction has 244 states and 265 transitions. [2024-11-19 14:24:10,550 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 244 states and 265 transitions. [2024-11-19 14:24:10,552 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 244 to 202. [2024-11-19 14:24:10,552 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 202 states, 202 states have (on average 1.0841584158415842) internal successors, (219), 201 states have internal predecessors, (219), 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-19 14:24:10,553 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 202 states to 202 states and 219 transitions. [2024-11-19 14:24:10,553 INFO L240 hiAutomatonCegarLoop]: Abstraction has 202 states and 219 transitions. [2024-11-19 14:24:10,556 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 37 states. [2024-11-19 14:24:10,557 INFO L425 stractBuchiCegarLoop]: Abstraction has 202 states and 219 transitions. [2024-11-19 14:24:10,557 INFO L332 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2024-11-19 14:24:10,557 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 202 states and 219 transitions. [2024-11-19 14:24:10,557 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:10,557 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:10,558 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:10,558 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [12, 11, 9, 9, 9, 9, 8, 5, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:10,558 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:10,558 INFO L745 eck$LassoCheckResult]: Stem: 10749#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 10738#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 10728#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 10729#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10745#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10746#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10747#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10771#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10770#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10769#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10768#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10767#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10766#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10765#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10764#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10762#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10760#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10758#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10757#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10756#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 10755#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 10754#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 10711#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 10712#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10719#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10720#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10743#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10744#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10808#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10807#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10806#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10805#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10804#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10803#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10802#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10801#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10800#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10799#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10797#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10798#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10843#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10841#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10839#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10837#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10835#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10834#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10833#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10775#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10772#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10763#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10761#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 10723#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 10724#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 10739#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10912#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10910#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10909#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10908#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10907#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10905#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10903#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10901#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10899#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10897#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10895#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10893#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10891#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10888#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10886#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10884#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10882#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10883#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10906#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10904#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10741#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10715#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10716#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10740#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10713#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10714#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10880#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10878#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10876#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10874#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10872#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10870#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10868#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10849#L30-2 [2024-11-19 14:24:10,559 INFO L747 eck$LassoCheckResult]: Loop: 10849#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 10776#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10777#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10849#L30-2 [2024-11-19 14:24:10,559 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:10,559 INFO L85 PathProgramCache]: Analyzing trace with hash 400932536, now seen corresponding path program 10 times [2024-11-19 14:24:10,559 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:10,559 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [159488255] [2024-11-19 14:24:10,559 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:24:10,559 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:10,580 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:24:10,580 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:10,961 INFO L134 CoverageAnalysis]: Checked inductivity of 374 backedges. 176 proven. 102 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2024-11-19 14:24:10,961 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:10,962 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [159488255] [2024-11-19 14:24:10,962 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [159488255] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:10,962 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1190523296] [2024-11-19 14:24:10,962 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:24:10,962 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:10,962 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:10,964 INFO L229 MonitoredProcess]: Starting monitored process 74 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:10,965 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (74)] Waiting until timeout for monitored process [2024-11-19 14:24:11,063 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:24:11,063 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:11,064 INFO L255 TraceCheckSpWp]: Trace formula consists of 285 conjuncts, 22 conjuncts are in the unsatisfiable core [2024-11-19 14:24:11,065 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:11,457 INFO L134 CoverageAnalysis]: Checked inductivity of 374 backedges. 173 proven. 117 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2024-11-19 14:24:11,458 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:11,728 INFO L134 CoverageAnalysis]: Checked inductivity of 374 backedges. 173 proven. 117 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2024-11-19 14:24:11,729 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1190523296] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:11,729 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:11,729 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 23, 23] total 41 [2024-11-19 14:24:11,729 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [919296659] [2024-11-19 14:24:11,729 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:11,730 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:11,730 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:11,730 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 9 times [2024-11-19 14:24:11,730 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:11,730 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [946240387] [2024-11-19 14:24:11,730 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:24:11,730 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:11,734 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-19 14:24:11,734 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:11,734 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:11,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:11,737 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:11,793 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:11,793 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2024-11-19 14:24:11,794 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=375, Invalid=1265, Unknown=0, NotChecked=0, Total=1640 [2024-11-19 14:24:11,794 INFO L87 Difference]: Start difference. First operand 202 states and 219 transitions. cyclomatic complexity: 25 Second operand has 41 states, 41 states have (on average 3.024390243902439) internal successors, (124), 41 states have internal predecessors, (124), 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-19 14:24:12,490 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:12,490 INFO L93 Difference]: Finished difference Result 402 states and 434 transitions. [2024-11-19 14:24:12,490 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 402 states and 434 transitions. [2024-11-19 14:24:12,491 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:12,492 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 402 states to 291 states and 320 transitions. [2024-11-19 14:24:12,492 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 141 [2024-11-19 14:24:12,492 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 168 [2024-11-19 14:24:12,493 INFO L73 IsDeterministic]: Start isDeterministic. Operand 291 states and 320 transitions. [2024-11-19 14:24:12,493 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:12,493 INFO L218 hiAutomatonCegarLoop]: Abstraction has 291 states and 320 transitions. [2024-11-19 14:24:12,493 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 291 states and 320 transitions. [2024-11-19 14:24:12,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 291 to 249. [2024-11-19 14:24:12,495 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 249 states, 249 states have (on average 1.0923694779116466) internal successors, (272), 248 states have internal predecessors, (272), 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-19 14:24:12,495 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 249 states to 249 states and 272 transitions. [2024-11-19 14:24:12,495 INFO L240 hiAutomatonCegarLoop]: Abstraction has 249 states and 272 transitions. [2024-11-19 14:24:12,501 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 46 states. [2024-11-19 14:24:12,501 INFO L425 stractBuchiCegarLoop]: Abstraction has 249 states and 272 transitions. [2024-11-19 14:24:12,501 INFO L332 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2024-11-19 14:24:12,502 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 249 states and 272 transitions. [2024-11-19 14:24:12,502 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:12,502 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:12,502 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:12,503 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [14, 13, 10, 10, 10, 9, 9, 6, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:12,503 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:12,503 INFO L745 eck$LassoCheckResult]: Stem: 11963#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 11952#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 11944#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 11945#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11959#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11960#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11961#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11992#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11991#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11990#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11989#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11988#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11987#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11986#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11985#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11984#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11982#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11981#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11980#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11978#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 11974#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 11973#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 11925#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 11926#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12055#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12054#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11958#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 11935#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11936#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11972#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12053#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12052#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12051#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12050#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12049#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12048#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12047#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12046#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12045#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12044#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12043#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12041#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12042#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12158#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12157#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12156#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12155#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12154#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12153#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12152#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12151#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12150#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 11993#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11975#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 11940#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 11941#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 11953#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12106#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12105#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12104#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12103#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12102#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12101#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12100#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12099#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12098#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12097#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12096#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12095#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12094#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12093#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12092#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12091#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12089#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12090#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12143#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11966#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11967#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12142#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12141#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12138#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12135#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12133#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11955#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11929#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11930#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12139#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12136#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12134#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12132#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12129#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12073#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12069#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12070#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12119#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12118#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12074#L30-2 [2024-11-19 14:24:12,503 INFO L747 eck$LassoCheckResult]: Loop: 12074#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 12067#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12068#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12074#L30-2 [2024-11-19 14:24:12,503 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:12,503 INFO L85 PathProgramCache]: Analyzing trace with hash 1977128861, now seen corresponding path program 11 times [2024-11-19 14:24:12,503 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:12,504 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [497613179] [2024-11-19 14:24:12,504 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:24:12,504 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:12,532 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 14 check-sat command(s) [2024-11-19 14:24:12,532 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:13,072 INFO L134 CoverageAnalysis]: Checked inductivity of 473 backedges. 162 proven. 200 refuted. 0 times theorem prover too weak. 111 trivial. 0 not checked. [2024-11-19 14:24:13,072 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:13,072 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [497613179] [2024-11-19 14:24:13,073 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [497613179] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:13,073 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1438885552] [2024-11-19 14:24:13,073 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:24:13,073 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:13,073 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:13,075 INFO L229 MonitoredProcess]: Starting monitored process 75 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:13,076 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (75)] Waiting until timeout for monitored process [2024-11-19 14:24:13,210 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 14 check-sat command(s) [2024-11-19 14:24:13,211 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:13,212 INFO L255 TraceCheckSpWp]: Trace formula consists of 340 conjuncts, 22 conjuncts are in the unsatisfiable core [2024-11-19 14:24:13,213 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:13,633 INFO L134 CoverageAnalysis]: Checked inductivity of 473 backedges. 229 proven. 81 refuted. 0 times theorem prover too weak. 163 trivial. 0 not checked. [2024-11-19 14:24:13,633 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:14,009 INFO L134 CoverageAnalysis]: Checked inductivity of 473 backedges. 229 proven. 81 refuted. 0 times theorem prover too weak. 163 trivial. 0 not checked. [2024-11-19 14:24:14,009 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1438885552] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:14,010 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:14,010 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 23, 23] total 54 [2024-11-19 14:24:14,010 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1604389440] [2024-11-19 14:24:14,010 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:14,010 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:14,010 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:14,010 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 10 times [2024-11-19 14:24:14,010 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:14,010 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [815074658] [2024-11-19 14:24:14,010 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:24:14,010 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:14,013 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:24:14,013 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:14,013 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:14,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:14,015 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:14,066 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:14,066 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 54 interpolants. [2024-11-19 14:24:14,067 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=387, Invalid=2475, Unknown=0, NotChecked=0, Total=2862 [2024-11-19 14:24:14,067 INFO L87 Difference]: Start difference. First operand 249 states and 272 transitions. cyclomatic complexity: 31 Second operand has 54 states, 54 states have (on average 2.7962962962962963) internal successors, (151), 54 states have internal predecessors, (151), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-19 14:24:15,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:15,746 INFO L93 Difference]: Finished difference Result 347 states and 372 transitions. [2024-11-19 14:24:15,746 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 347 states and 372 transitions. [2024-11-19 14:24:15,747 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:15,748 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 347 states to 246 states and 267 transitions. [2024-11-19 14:24:15,748 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 126 [2024-11-19 14:24:15,748 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 126 [2024-11-19 14:24:15,748 INFO L73 IsDeterministic]: Start isDeterministic. Operand 246 states and 267 transitions. [2024-11-19 14:24:15,748 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:15,748 INFO L218 hiAutomatonCegarLoop]: Abstraction has 246 states and 267 transitions. [2024-11-19 14:24:15,749 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 246 states and 267 transitions. [2024-11-19 14:24:15,750 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 246 to 234. [2024-11-19 14:24:15,751 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 234 states, 234 states have (on average 1.0897435897435896) internal successors, (255), 233 states have internal predecessors, (255), 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-19 14:24:15,751 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 234 states to 234 states and 255 transitions. [2024-11-19 14:24:15,751 INFO L240 hiAutomatonCegarLoop]: Abstraction has 234 states and 255 transitions. [2024-11-19 14:24:15,754 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 61 states. [2024-11-19 14:24:15,754 INFO L425 stractBuchiCegarLoop]: Abstraction has 234 states and 255 transitions. [2024-11-19 14:24:15,755 INFO L332 stractBuchiCegarLoop]: ======== Iteration 24 ============ [2024-11-19 14:24:15,755 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 234 states and 255 transitions. [2024-11-19 14:24:15,755 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:15,755 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:15,755 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:15,756 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [14, 13, 11, 11, 10, 10, 10, 7, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:15,756 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:15,756 INFO L745 eck$LassoCheckResult]: Stem: 13260#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 13249#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 13239#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 13240#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13257#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13258#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13255#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13256#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13286#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13285#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13284#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13283#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13282#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13281#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13280#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13279#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13278#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13277#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13276#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13275#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13274#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13273#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 13265#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 13264#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 13222#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 13223#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13230#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13231#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13253#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13254#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13322#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13321#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13320#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13319#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13318#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13317#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13316#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13315#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13314#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13313#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13312#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13311#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13310#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13309#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13308#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13307#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13305#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13306#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13452#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13450#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13448#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13446#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13444#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13442#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13441#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13440#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13439#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13268#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13267#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 13234#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 13235#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 13250#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13224#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13225#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13251#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13226#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13227#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13261#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13429#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13427#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13425#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13423#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13414#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13412#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13409#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13405#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13402#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13399#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13396#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13393#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13390#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13386#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13387#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13418#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13415#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13413#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13411#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13408#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13407#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13410#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13406#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13403#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13400#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13397#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13394#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13391#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13388#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13384#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13381#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13378#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13353#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13352#L30-2 [2024-11-19 14:24:15,757 INFO L747 eck$LassoCheckResult]: Loop: 13352#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 13350#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13351#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13352#L30-2 [2024-11-19 14:24:15,757 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:15,757 INFO L85 PathProgramCache]: Analyzing trace with hash -1547203334, now seen corresponding path program 12 times [2024-11-19 14:24:15,757 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:15,757 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1703602046] [2024-11-19 14:24:15,757 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:24:15,757 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:15,790 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 14 check-sat command(s) [2024-11-19 14:24:15,791 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:16,382 INFO L134 CoverageAnalysis]: Checked inductivity of 523 backedges. 41 proven. 288 refuted. 0 times theorem prover too weak. 194 trivial. 0 not checked. [2024-11-19 14:24:16,382 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:16,383 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1703602046] [2024-11-19 14:24:16,383 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1703602046] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:16,383 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [888504071] [2024-11-19 14:24:16,383 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:24:16,383 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:16,383 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:16,385 INFO L229 MonitoredProcess]: Starting monitored process 76 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:16,386 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (76)] Waiting until timeout for monitored process [2024-11-19 14:24:16,632 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 14 check-sat command(s) [2024-11-19 14:24:16,632 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:16,634 INFO L255 TraceCheckSpWp]: Trace formula consists of 355 conjuncts, 27 conjuncts are in the unsatisfiable core [2024-11-19 14:24:16,635 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:17,190 INFO L134 CoverageAnalysis]: Checked inductivity of 523 backedges. 247 proven. 100 refuted. 0 times theorem prover too weak. 176 trivial. 0 not checked. [2024-11-19 14:24:17,190 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:17,650 INFO L134 CoverageAnalysis]: Checked inductivity of 523 backedges. 247 proven. 100 refuted. 0 times theorem prover too weak. 176 trivial. 0 not checked. [2024-11-19 14:24:17,650 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [888504071] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:17,650 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:17,651 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [27, 27, 27] total 69 [2024-11-19 14:24:17,651 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [806958765] [2024-11-19 14:24:17,651 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:17,651 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:17,651 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:17,651 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 11 times [2024-11-19 14:24:17,651 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:17,651 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [322534756] [2024-11-19 14:24:17,651 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:24:17,651 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:17,654 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:24:17,654 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:17,654 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:17,655 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:17,656 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:17,698 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:17,699 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 70 interpolants. [2024-11-19 14:24:17,700 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=923, Invalid=3907, Unknown=0, NotChecked=0, Total=4830 [2024-11-19 14:24:17,700 INFO L87 Difference]: Start difference. First operand 234 states and 255 transitions. cyclomatic complexity: 29 Second operand has 70 states, 69 states have (on average 2.7246376811594204) internal successors, (188), 70 states have internal predecessors, (188), 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-19 14:24:19,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:19,367 INFO L93 Difference]: Finished difference Result 591 states and 626 transitions. [2024-11-19 14:24:19,367 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 591 states and 626 transitions. [2024-11-19 14:24:19,369 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:19,369 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 591 states to 243 states and 264 transitions. [2024-11-19 14:24:19,369 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 116 [2024-11-19 14:24:19,369 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 116 [2024-11-19 14:24:19,369 INFO L73 IsDeterministic]: Start isDeterministic. Operand 243 states and 264 transitions. [2024-11-19 14:24:19,369 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:19,369 INFO L218 hiAutomatonCegarLoop]: Abstraction has 243 states and 264 transitions. [2024-11-19 14:24:19,370 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 243 states and 264 transitions. [2024-11-19 14:24:19,372 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 243 to 242. [2024-11-19 14:24:19,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 242 states, 242 states have (on average 1.0867768595041323) internal successors, (263), 241 states have internal predecessors, (263), 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-19 14:24:19,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 242 states to 242 states and 263 transitions. [2024-11-19 14:24:19,373 INFO L240 hiAutomatonCegarLoop]: Abstraction has 242 states and 263 transitions. [2024-11-19 14:24:19,375 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 60 states. [2024-11-19 14:24:19,375 INFO L425 stractBuchiCegarLoop]: Abstraction has 242 states and 263 transitions. [2024-11-19 14:24:19,376 INFO L332 stractBuchiCegarLoop]: ======== Iteration 25 ============ [2024-11-19 14:24:19,376 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 242 states and 263 transitions. [2024-11-19 14:24:19,376 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:19,376 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:19,376 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:19,377 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [14, 14, 14, 13, 11, 11, 10, 7, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:19,377 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:19,377 INFO L745 eck$LassoCheckResult]: Stem: 14832#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 14820#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 14811#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 14812#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14828#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14829#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14830#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14918#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14916#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14914#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14913#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14910#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14907#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14904#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14901#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14898#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14895#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14891#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14889#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14886#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14882#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14879#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14876#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14873#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14870#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14867#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14864#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14861#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14859#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14856#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 14841#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 14840#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 14794#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 14795#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14802#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14803#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14826#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14827#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14838#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14839#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14930#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14929#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14928#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14927#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14926#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14925#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14924#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14923#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14922#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14921#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14920#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14919#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14917#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14915#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14911#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14912#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14958#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14956#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14954#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14952#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14950#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14947#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14946#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14945#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14944#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14852#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14850#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 14806#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 14807#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 14821#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15033#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15032#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15030#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15028#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14834#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14823#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14798#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14799#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15025#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15023#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15021#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15019#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15017#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15016#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15015#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15014#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15012#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15009#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15008#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15006#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15003#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15001#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14998#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14999#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15013#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15010#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15005#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15007#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 15004#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 15002#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 15000#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14997#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14995#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14993#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14991#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14989#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14987#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14985#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14983#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14962#L30-2 [2024-11-19 14:24:19,377 INFO L747 eck$LassoCheckResult]: Loop: 14962#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 14935#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14936#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14962#L30-2 [2024-11-19 14:24:19,378 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:19,378 INFO L85 PathProgramCache]: Analyzing trace with hash 1033661570, now seen corresponding path program 13 times [2024-11-19 14:24:19,378 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:19,378 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1241145346] [2024-11-19 14:24:19,378 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-19 14:24:19,378 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:19,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:24:19,759 INFO L134 CoverageAnalysis]: Checked inductivity of 619 backedges. 40 proven. 136 refuted. 0 times theorem prover too weak. 443 trivial. 0 not checked. [2024-11-19 14:24:19,759 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:19,759 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1241145346] [2024-11-19 14:24:19,759 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1241145346] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:19,759 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2000340191] [2024-11-19 14:24:19,759 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-19 14:24:19,759 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:19,760 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:19,761 INFO L229 MonitoredProcess]: Starting monitored process 77 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:19,762 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (77)] Waiting until timeout for monitored process [2024-11-19 14:24:19,885 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-19 14:24:19,887 INFO L255 TraceCheckSpWp]: Trace formula consists of 399 conjuncts, 28 conjuncts are in the unsatisfiable core [2024-11-19 14:24:19,889 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:20,364 INFO L134 CoverageAnalysis]: Checked inductivity of 619 backedges. 169 proven. 203 refuted. 0 times theorem prover too weak. 247 trivial. 0 not checked. [2024-11-19 14:24:20,364 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:20,693 INFO L134 CoverageAnalysis]: Checked inductivity of 619 backedges. 169 proven. 203 refuted. 0 times theorem prover too weak. 247 trivial. 0 not checked. [2024-11-19 14:24:20,693 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2000340191] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:20,693 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:20,693 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 29, 29] total 53 [2024-11-19 14:24:20,693 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1492178617] [2024-11-19 14:24:20,693 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:20,694 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:20,694 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:20,694 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 12 times [2024-11-19 14:24:20,694 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:20,694 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [356026813] [2024-11-19 14:24:20,694 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:24:20,694 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:20,697 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 1 check-sat command(s) [2024-11-19 14:24:20,697 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:20,697 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:20,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:20,699 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:20,746 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:20,746 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 53 interpolants. [2024-11-19 14:24:20,747 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=512, Invalid=2244, Unknown=0, NotChecked=0, Total=2756 [2024-11-19 14:24:20,747 INFO L87 Difference]: Start difference. First operand 242 states and 263 transitions. cyclomatic complexity: 29 Second operand has 53 states, 53 states have (on average 2.660377358490566) internal successors, (141), 53 states have internal predecessors, (141), 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-19 14:24:21,809 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:21,809 INFO L93 Difference]: Finished difference Result 324 states and 350 transitions. [2024-11-19 14:24:21,809 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 324 states and 350 transitions. [2024-11-19 14:24:21,811 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:21,811 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 324 states to 316 states and 338 transitions. [2024-11-19 14:24:21,812 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 152 [2024-11-19 14:24:21,812 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 152 [2024-11-19 14:24:21,812 INFO L73 IsDeterministic]: Start isDeterministic. Operand 316 states and 338 transitions. [2024-11-19 14:24:21,812 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:21,812 INFO L218 hiAutomatonCegarLoop]: Abstraction has 316 states and 338 transitions. [2024-11-19 14:24:21,812 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 316 states and 338 transitions. [2024-11-19 14:24:21,814 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 316 to 249. [2024-11-19 14:24:21,815 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 249 states, 249 states have (on average 1.0602409638554218) internal successors, (264), 248 states have internal predecessors, (264), 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-19 14:24:21,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 249 states to 249 states and 264 transitions. [2024-11-19 14:24:21,815 INFO L240 hiAutomatonCegarLoop]: Abstraction has 249 states and 264 transitions. [2024-11-19 14:24:21,816 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 49 states. [2024-11-19 14:24:21,819 INFO L425 stractBuchiCegarLoop]: Abstraction has 249 states and 264 transitions. [2024-11-19 14:24:21,819 INFO L332 stractBuchiCegarLoop]: ======== Iteration 26 ============ [2024-11-19 14:24:21,819 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 249 states and 264 transitions. [2024-11-19 14:24:21,820 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:21,820 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:21,820 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:21,821 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [16, 15, 14, 14, 14, 14, 10, 8, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:21,821 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:21,821 INFO L745 eck$LassoCheckResult]: Stem: 16193#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 16182#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 16175#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 16176#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16189#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16190#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16191#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16229#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16228#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16227#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16226#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16225#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16224#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16223#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16222#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16221#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16220#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16219#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16218#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16217#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16216#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16215#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16214#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16212#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16208#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16206#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16204#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16202#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16201#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16200#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 16199#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 16198#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 16156#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 16157#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16288#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16287#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16286#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16285#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16284#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16283#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16282#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16281#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16280#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16279#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16278#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16277#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16276#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16275#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16274#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16273#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16272#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16271#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16270#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16269#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16268#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16267#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16266#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16264#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16265#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16300#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16299#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16298#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16295#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16186#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16162#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16163#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16197#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16294#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16293#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16292#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16235#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16232#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16233#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16244#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16207#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16205#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 16168#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 16169#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 16183#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16158#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16159#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16184#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16185#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16194#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16195#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16160#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16161#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16380#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16366#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16364#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16362#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16360#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16358#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16356#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16354#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16352#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16350#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16348#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16347#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16346#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16344#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16340#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16341#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16377#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16376#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16343#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16345#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16342#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16339#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16337#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16335#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16333#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16331#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16329#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16327#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16325#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16323#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16321#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16319#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16317#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16315#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16313#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16311#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16304#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16303#L30-2 [2024-11-19 14:24:21,822 INFO L747 eck$LassoCheckResult]: Loop: 16303#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 16296#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16297#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16303#L30-2 [2024-11-19 14:24:21,822 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:21,822 INFO L85 PathProgramCache]: Analyzing trace with hash 1549110643, now seen corresponding path program 14 times [2024-11-19 14:24:21,822 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:21,822 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1710282116] [2024-11-19 14:24:21,822 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:24:21,822 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:21,847 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-19 14:24:21,848 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:22,441 INFO L134 CoverageAnalysis]: Checked inductivity of 813 backedges. 404 proven. 110 refuted. 0 times theorem prover too weak. 299 trivial. 0 not checked. [2024-11-19 14:24:22,441 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:22,441 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1710282116] [2024-11-19 14:24:22,441 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1710282116] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:22,442 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [75123286] [2024-11-19 14:24:22,442 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:24:22,442 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:22,442 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:22,444 INFO L229 MonitoredProcess]: Starting monitored process 78 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:22,445 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (78)] Waiting until timeout for monitored process [2024-11-19 14:24:22,590 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-19 14:24:22,590 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:22,597 INFO L255 TraceCheckSpWp]: Trace formula consists of 451 conjuncts, 32 conjuncts are in the unsatisfiable core [2024-11-19 14:24:22,599 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:23,324 INFO L134 CoverageAnalysis]: Checked inductivity of 813 backedges. 330 proven. 196 refuted. 0 times theorem prover too weak. 287 trivial. 0 not checked. [2024-11-19 14:24:23,324 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:23,944 INFO L134 CoverageAnalysis]: Checked inductivity of 813 backedges. 330 proven. 196 refuted. 0 times theorem prover too weak. 287 trivial. 0 not checked. [2024-11-19 14:24:23,944 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [75123286] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:23,945 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:23,945 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 33, 33] total 70 [2024-11-19 14:24:23,945 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [936003314] [2024-11-19 14:24:23,945 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:23,945 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:23,945 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:23,946 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 13 times [2024-11-19 14:24:23,946 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:23,946 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2018637771] [2024-11-19 14:24:23,946 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-19 14:24:23,946 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:23,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:23,949 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:23,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:23,952 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:23,999 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:24,001 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 70 interpolants. [2024-11-19 14:24:24,002 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=762, Invalid=4068, Unknown=0, NotChecked=0, Total=4830 [2024-11-19 14:24:24,003 INFO L87 Difference]: Start difference. First operand 249 states and 264 transitions. cyclomatic complexity: 23 Second operand has 70 states, 70 states have (on average 2.742857142857143) internal successors, (192), 70 states have internal predecessors, (192), 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-19 14:24:26,322 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:26,322 INFO L93 Difference]: Finished difference Result 506 states and 528 transitions. [2024-11-19 14:24:26,322 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 506 states and 528 transitions. [2024-11-19 14:24:26,323 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:26,324 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 506 states to 296 states and 310 transitions. [2024-11-19 14:24:26,324 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 154 [2024-11-19 14:24:26,324 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 154 [2024-11-19 14:24:26,324 INFO L73 IsDeterministic]: Start isDeterministic. Operand 296 states and 310 transitions. [2024-11-19 14:24:26,324 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:26,324 INFO L218 hiAutomatonCegarLoop]: Abstraction has 296 states and 310 transitions. [2024-11-19 14:24:26,325 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 296 states and 310 transitions. [2024-11-19 14:24:26,326 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 296 to 263. [2024-11-19 14:24:26,327 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 263 states, 263 states have (on average 1.049429657794677) internal successors, (276), 262 states have internal predecessors, (276), 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-19 14:24:26,327 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 263 states to 263 states and 276 transitions. [2024-11-19 14:24:26,327 INFO L240 hiAutomatonCegarLoop]: Abstraction has 263 states and 276 transitions. [2024-11-19 14:24:26,327 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 75 states. [2024-11-19 14:24:26,328 INFO L425 stractBuchiCegarLoop]: Abstraction has 263 states and 276 transitions. [2024-11-19 14:24:26,328 INFO L332 stractBuchiCegarLoop]: ======== Iteration 27 ============ [2024-11-19 14:24:26,328 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 263 states and 276 transitions. [2024-11-19 14:24:26,329 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:26,329 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:26,329 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:26,330 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [17, 16, 15, 15, 15, 15, 10, 8, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:26,330 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:26,330 INFO L745 eck$LassoCheckResult]: Stem: 17902#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 17892#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 17883#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 17884#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17898#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17899#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17900#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17937#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17936#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17935#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17934#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17933#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17932#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17931#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17930#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17929#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17928#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17927#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17926#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17925#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17924#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17923#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17922#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17921#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17920#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17919#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17918#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17917#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17916#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17915#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17914#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17913#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 17909#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 17908#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 17866#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 17867#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17986#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17985#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17897#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17874#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17875#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17907#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17983#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17982#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17981#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17980#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17979#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17978#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17977#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17976#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17975#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17974#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17973#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17972#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17971#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17970#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17969#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17968#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17967#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17966#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17872#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 17873#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17906#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18014#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18012#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18010#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18008#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18006#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18004#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18002#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18000#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17998#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17996#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 17994#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17992#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17987#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 17984#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17942#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 17938#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 17912#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17911#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 17878#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 17879#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 17893#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 17868#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17869#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17894#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 17870#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 17871#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 17903#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18117#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18115#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18114#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18112#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18110#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18108#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18107#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18106#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18104#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18103#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18102#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18101#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18100#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18098#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18095#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18093#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18090#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18091#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18099#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18096#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18097#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18128#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18127#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18126#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18125#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18124#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18123#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18122#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18121#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18120#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18119#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18118#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18073#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18074#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18116#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18066#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18064#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18062#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18059#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18060#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18105#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18044#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18045#L30-2 [2024-11-19 14:24:26,330 INFO L747 eck$LassoCheckResult]: Loop: 18045#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 18051#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18046#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18045#L30-2 [2024-11-19 14:24:26,330 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:26,330 INFO L85 PathProgramCache]: Analyzing trace with hash 1567531630, now seen corresponding path program 15 times [2024-11-19 14:24:26,331 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:26,331 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [275931741] [2024-11-19 14:24:26,331 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:24:26,331 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:26,415 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 17 check-sat command(s) [2024-11-19 14:24:26,415 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:28,627 INFO L134 CoverageAnalysis]: Checked inductivity of 931 backedges. 138 proven. 568 refuted. 0 times theorem prover too weak. 225 trivial. 0 not checked. [2024-11-19 14:24:28,627 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:28,627 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [275931741] [2024-11-19 14:24:28,627 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [275931741] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:28,627 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [803247043] [2024-11-19 14:24:28,627 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:24:28,627 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:28,627 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:28,628 INFO L229 MonitoredProcess]: Starting monitored process 79 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:28,629 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (79)] Waiting until timeout for monitored process [2024-11-19 14:24:29,277 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 17 check-sat command(s) [2024-11-19 14:24:29,277 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:29,281 INFO L255 TraceCheckSpWp]: Trace formula consists of 486 conjuncts, 35 conjuncts are in the unsatisfiable core [2024-11-19 14:24:29,282 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:30,087 INFO L134 CoverageAnalysis]: Checked inductivity of 931 backedges. 376 proven. 330 refuted. 0 times theorem prover too weak. 225 trivial. 0 not checked. [2024-11-19 14:24:30,087 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:30,785 INFO L134 CoverageAnalysis]: Checked inductivity of 931 backedges. 376 proven. 330 refuted. 0 times theorem prover too weak. 225 trivial. 0 not checked. [2024-11-19 14:24:30,785 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [803247043] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:30,785 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:30,785 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [40, 35, 35] total 91 [2024-11-19 14:24:30,785 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1399365445] [2024-11-19 14:24:30,785 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:30,786 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:30,786 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:30,786 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 14 times [2024-11-19 14:24:30,786 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:30,786 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [202741606] [2024-11-19 14:24:30,786 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-19 14:24:30,786 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:30,789 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:24:30,789 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:30,789 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:30,790 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:30,791 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:30,851 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:30,851 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 92 interpolants. [2024-11-19 14:24:30,853 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1197, Invalid=7175, Unknown=0, NotChecked=0, Total=8372 [2024-11-19 14:24:30,853 INFO L87 Difference]: Start difference. First operand 263 states and 276 transitions. cyclomatic complexity: 21 Second operand has 92 states, 91 states have (on average 2.868131868131868) internal successors, (261), 92 states have internal predecessors, (261), 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-19 14:24:41,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:41,572 INFO L93 Difference]: Finished difference Result 1138 states and 1190 transitions. [2024-11-19 14:24:41,572 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1138 states and 1190 transitions. [2024-11-19 14:24:41,575 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:41,576 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1138 states to 624 states and 665 transitions. [2024-11-19 14:24:41,576 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 280 [2024-11-19 14:24:41,576 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 417 [2024-11-19 14:24:41,576 INFO L73 IsDeterministic]: Start isDeterministic. Operand 624 states and 665 transitions. [2024-11-19 14:24:41,577 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:41,577 INFO L218 hiAutomatonCegarLoop]: Abstraction has 624 states and 665 transitions. [2024-11-19 14:24:41,577 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 624 states and 665 transitions. [2024-11-19 14:24:41,581 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 624 to 584. [2024-11-19 14:24:41,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 584 states, 584 states have (on average 1.0667808219178083) internal successors, (623), 583 states have internal predecessors, (623), 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-19 14:24:41,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 584 states to 584 states and 623 transitions. [2024-11-19 14:24:41,582 INFO L240 hiAutomatonCegarLoop]: Abstraction has 584 states and 623 transitions. [2024-11-19 14:24:41,583 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 308 states. [2024-11-19 14:24:41,584 INFO L425 stractBuchiCegarLoop]: Abstraction has 584 states and 623 transitions. [2024-11-19 14:24:41,584 INFO L332 stractBuchiCegarLoop]: ======== Iteration 28 ============ [2024-11-19 14:24:41,584 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 584 states and 623 transitions. [2024-11-19 14:24:41,585 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:41,585 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:41,585 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:41,586 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [24, 23, 17, 17, 17, 15, 15, 9, 8, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:41,586 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:41,586 INFO L745 eck$LassoCheckResult]: Stem: 20730#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 20717#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 20707#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 20708#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20727#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20728#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20725#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20726#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20767#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20766#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20765#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20764#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20763#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20762#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20761#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20760#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20759#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20758#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20757#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20756#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20755#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20754#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20752#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20751#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20750#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20749#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20746#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20744#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20743#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20742#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20741#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20740#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 20738#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 20737#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 20690#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 20691#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20889#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20888#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20724#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20698#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20699#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20736#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20885#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20884#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20883#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20882#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20881#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20880#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20879#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20878#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20877#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20876#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20875#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20874#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20873#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20872#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20871#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20870#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20869#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20868#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20867#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20866#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20864#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20865#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21155#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21154#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21153#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21152#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21151#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21150#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21149#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21148#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21147#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21146#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21145#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21144#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21143#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21142#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21141#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21140#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21138#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 21136#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21134#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21133#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20814#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20810#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20739#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 20705#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 20706#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 20718#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20918#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20732#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20733#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20967#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20966#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20965#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20964#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20962#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20960#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20958#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20956#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20954#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20952#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20950#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20948#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20946#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20944#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20942#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20940#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20938#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20936#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20934#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20931#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20928#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20925#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20921#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20922#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21011#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21008#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21009#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21017#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21014#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21015#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21062#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21059#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21060#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21066#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21064#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21065#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21117#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21114#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21115#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21129#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20734#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20735#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21130#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 21128#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20721#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20694#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20695#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21122#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21121#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21120#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21119#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21118#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21116#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21113#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21111#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21109#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21107#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21105#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21102#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21099#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21096#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21093#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 21090#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 21087#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 21084#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20894#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20893#L30-2 [2024-11-19 14:24:41,586 INFO L747 eck$LassoCheckResult]: Loop: 20893#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 20812#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20813#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20893#L30-2 [2024-11-19 14:24:41,586 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:41,586 INFO L85 PathProgramCache]: Analyzing trace with hash -2125751290, now seen corresponding path program 16 times [2024-11-19 14:24:41,587 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:41,587 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2105144228] [2024-11-19 14:24:41,587 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:24:41,587 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:41,615 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:24:41,615 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:42,739 INFO L134 CoverageAnalysis]: Checked inductivity of 1432 backedges. 725 proven. 348 refuted. 0 times theorem prover too weak. 359 trivial. 0 not checked. [2024-11-19 14:24:42,739 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:42,739 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2105144228] [2024-11-19 14:24:42,739 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2105144228] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:42,739 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1523499003] [2024-11-19 14:24:42,739 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:24:42,740 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:42,740 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:42,741 INFO L229 MonitoredProcess]: Starting monitored process 80 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:42,742 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (80)] Waiting until timeout for monitored process [2024-11-19 14:24:42,888 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:24:42,888 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:42,890 INFO L255 TraceCheckSpWp]: Trace formula consists of 487 conjuncts, 38 conjuncts are in the unsatisfiable core [2024-11-19 14:24:42,892 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:43,792 INFO L134 CoverageAnalysis]: Checked inductivity of 1432 backedges. 737 proven. 425 refuted. 0 times theorem prover too weak. 270 trivial. 0 not checked. [2024-11-19 14:24:43,792 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:44,595 INFO L134 CoverageAnalysis]: Checked inductivity of 1432 backedges. 737 proven. 425 refuted. 0 times theorem prover too weak. 270 trivial. 0 not checked. [2024-11-19 14:24:44,595 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1523499003] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:44,595 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:44,595 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [32, 39, 39] total 85 [2024-11-19 14:24:44,595 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1502069785] [2024-11-19 14:24:44,595 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:44,596 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:44,596 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:44,596 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 15 times [2024-11-19 14:24:44,596 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:44,596 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1244049972] [2024-11-19 14:24:44,596 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-19 14:24:44,596 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:44,599 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2024-11-19 14:24:44,599 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:44,599 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:44,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:44,601 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:44,651 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:44,652 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 85 interpolants. [2024-11-19 14:24:44,653 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1397, Invalid=5743, Unknown=0, NotChecked=0, Total=7140 [2024-11-19 14:24:44,653 INFO L87 Difference]: Start difference. First operand 584 states and 623 transitions. cyclomatic complexity: 47 Second operand has 85 states, 85 states have (on average 2.9647058823529413) internal successors, (252), 85 states have internal predecessors, (252), 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-19 14:24:48,216 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:48,216 INFO L93 Difference]: Finished difference Result 908 states and 972 transitions. [2024-11-19 14:24:48,216 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 908 states and 972 transitions. [2024-11-19 14:24:48,219 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:48,220 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 908 states to 716 states and 776 transitions. [2024-11-19 14:24:48,220 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 454 [2024-11-19 14:24:48,221 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 499 [2024-11-19 14:24:48,221 INFO L73 IsDeterministic]: Start isDeterministic. Operand 716 states and 776 transitions. [2024-11-19 14:24:48,221 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:48,221 INFO L218 hiAutomatonCegarLoop]: Abstraction has 716 states and 776 transitions. [2024-11-19 14:24:48,221 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 716 states and 776 transitions. [2024-11-19 14:24:48,225 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 716 to 599. [2024-11-19 14:24:48,226 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 599 states, 599 states have (on average 1.0684474123539232) internal successors, (640), 598 states have internal predecessors, (640), 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-19 14:24:48,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 599 states to 599 states and 640 transitions. [2024-11-19 14:24:48,226 INFO L240 hiAutomatonCegarLoop]: Abstraction has 599 states and 640 transitions. [2024-11-19 14:24:48,227 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 123 states. [2024-11-19 14:24:48,227 INFO L425 stractBuchiCegarLoop]: Abstraction has 599 states and 640 transitions. [2024-11-19 14:24:48,227 INFO L332 stractBuchiCegarLoop]: ======== Iteration 29 ============ [2024-11-19 14:24:48,227 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 599 states and 640 transitions. [2024-11-19 14:24:48,228 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:48,228 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:48,228 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:48,229 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [25, 24, 18, 18, 18, 15, 15, 11, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:48,229 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:48,230 INFO L745 eck$LassoCheckResult]: Stem: 23447#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 23435#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 23427#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 23428#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23443#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23444#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23445#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23478#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23477#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23476#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23475#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23474#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23473#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23472#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23471#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23470#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23469#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23468#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23467#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23466#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23465#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23464#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23463#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23462#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23461#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23460#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23459#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23458#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23456#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23454#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23453#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23452#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 23451#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 23450#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 23408#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 23409#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23416#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23417#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23441#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23442#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23605#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23604#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23603#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23602#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23601#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23600#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23599#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23598#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23597#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23596#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23595#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23594#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23593#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23592#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23591#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23590#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23589#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23588#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23587#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23586#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23585#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23584#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23583#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23582#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23581#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23579#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23578#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23577#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23575#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23576#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23907#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23906#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23905#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23904#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23903#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23902#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23901#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23900#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23899#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23898#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23897#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23896#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23895#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23894#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23892#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23891#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23890#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 23889#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23528#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23457#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 23420#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 23421#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 23436#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23608#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23606#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23607#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23673#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23672#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23671#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23670#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23669#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23668#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23667#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23666#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23665#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23664#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23663#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23662#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23661#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23660#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23659#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23658#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23657#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23656#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23655#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23654#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23653#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23652#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23651#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23650#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23649#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23647#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23648#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23701#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23699#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23700#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23726#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23724#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23725#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23751#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23749#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23750#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23776#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23774#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23775#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23800#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23798#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23799#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23844#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23841#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23842#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23846#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23845#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23438#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23412#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 23413#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23437#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23410#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23411#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23448#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23860#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23859#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23858#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23857#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23856#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23855#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23854#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23853#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23852#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23851#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23850#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23849#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23848#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23847#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23618#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23617#L30-2 [2024-11-19 14:24:48,230 INFO L747 eck$LassoCheckResult]: Loop: 23617#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 23804#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 23616#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 23617#L30-2 [2024-11-19 14:24:48,230 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:48,230 INFO L85 PathProgramCache]: Analyzing trace with hash -4810335, now seen corresponding path program 17 times [2024-11-19 14:24:48,230 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:48,230 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [823068080] [2024-11-19 14:24:48,231 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:24:48,231 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:48,280 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 25 check-sat command(s) [2024-11-19 14:24:48,281 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:48,910 INFO L134 CoverageAnalysis]: Checked inductivity of 1554 backedges. 392 proven. 671 refuted. 0 times theorem prover too weak. 491 trivial. 0 not checked. [2024-11-19 14:24:48,910 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:48,910 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [823068080] [2024-11-19 14:24:48,910 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [823068080] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:48,910 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1322891102] [2024-11-19 14:24:48,910 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:24:48,910 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:48,911 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:48,912 INFO L229 MonitoredProcess]: Starting monitored process 81 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:48,913 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (81)] Waiting until timeout for monitored process [2024-11-19 14:24:49,123 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 25 check-sat command(s) [2024-11-19 14:24:49,124 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:49,126 INFO L255 TraceCheckSpWp]: Trace formula consists of 530 conjuncts, 34 conjuncts are in the unsatisfiable core [2024-11-19 14:24:49,131 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:49,876 INFO L134 CoverageAnalysis]: Checked inductivity of 1554 backedges. 744 proven. 225 refuted. 0 times theorem prover too weak. 585 trivial. 0 not checked. [2024-11-19 14:24:49,876 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:50,545 INFO L134 CoverageAnalysis]: Checked inductivity of 1554 backedges. 744 proven. 225 refuted. 0 times theorem prover too weak. 585 trivial. 0 not checked. [2024-11-19 14:24:50,546 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1322891102] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:50,546 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:50,546 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [26, 35, 35] total 75 [2024-11-19 14:24:50,546 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [983407644] [2024-11-19 14:24:50,546 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:50,546 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:50,546 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:50,546 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 16 times [2024-11-19 14:24:50,547 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:50,547 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2113001816] [2024-11-19 14:24:50,547 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-19 14:24:50,547 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:50,549 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-19 14:24:50,550 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:50,550 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:50,550 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:50,552 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:50,602 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:50,603 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 75 interpolants. [2024-11-19 14:24:50,604 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=875, Invalid=4675, Unknown=0, NotChecked=0, Total=5550 [2024-11-19 14:24:50,605 INFO L87 Difference]: Start difference. First operand 599 states and 640 transitions. cyclomatic complexity: 49 Second operand has 75 states, 75 states have (on average 2.8) internal successors, (210), 75 states have internal predecessors, (210), 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-19 14:24:52,301 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-19 14:24:52,301 INFO L93 Difference]: Finished difference Result 749 states and 810 transitions. [2024-11-19 14:24:52,301 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 749 states and 810 transitions. [2024-11-19 14:24:52,303 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:52,305 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 749 states to 710 states and 756 transitions. [2024-11-19 14:24:52,305 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 491 [2024-11-19 14:24:52,305 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 491 [2024-11-19 14:24:52,305 INFO L73 IsDeterministic]: Start isDeterministic. Operand 710 states and 756 transitions. [2024-11-19 14:24:52,305 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-19 14:24:52,305 INFO L218 hiAutomatonCegarLoop]: Abstraction has 710 states and 756 transitions. [2024-11-19 14:24:52,306 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 710 states and 756 transitions. [2024-11-19 14:24:52,310 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 710 to 643. [2024-11-19 14:24:52,310 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 643 states, 643 states have (on average 1.0606531881804044) internal successors, (682), 642 states have internal predecessors, (682), 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-19 14:24:52,311 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 643 states to 643 states and 682 transitions. [2024-11-19 14:24:52,311 INFO L240 hiAutomatonCegarLoop]: Abstraction has 643 states and 682 transitions. [2024-11-19 14:24:52,311 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 65 states. [2024-11-19 14:24:52,312 INFO L425 stractBuchiCegarLoop]: Abstraction has 643 states and 682 transitions. [2024-11-19 14:24:52,312 INFO L332 stractBuchiCegarLoop]: ======== Iteration 30 ============ [2024-11-19 14:24:52,312 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 643 states and 682 transitions. [2024-11-19 14:24:52,313 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-19 14:24:52,313 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-19 14:24:52,314 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-19 14:24:52,314 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [26, 25, 18, 18, 18, 16, 16, 10, 8, 7, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-19 14:24:52,314 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-19 14:24:52,314 INFO L745 eck$LassoCheckResult]: Stem: 25932#$Ultimate##0 assume { :begin_inline_ULTIMATE.init } true;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int#0(48, 1, 0, 1);call write~init~int#0(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);~N~0 := 0; 25917#L-1 assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~ret6#1, main_#t~mem7#1, main_#t~mem8#1, main_#t~ret9#1, main_#t~mem10#1, main_#t~mem11#1, main_#t~post12#1, main_~i~2#1, main_#t~ret13#1, main_~#x~0#1.base, main_~#x~0#1.offset, main_~temp~0#1, main_~ret~1#1, main_~ret2~0#1, main_~ret5~0#1;havoc main_#t~nondet5#1;~N~0 := main_#t~nondet5#1;havoc main_#t~nondet5#1; 25909#L44 assume ~N~0 > 1;call main_~#x~0#1.base, main_~#x~0#1.offset := #Ultimate.allocOnStack(4 * ~N~0 % 4294967296);assume { :begin_inline_init_nondet } true;init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;init_nondet_~x#1.base, init_nondet_~x#1.offset := init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;havoc init_nondet_~i~0#1;init_nondet_~i~0#1 := 0; 25910#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25929#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25930#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25927#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25928#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25973#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25972#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25971#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25970#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25969#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25968#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25967#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25966#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25965#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25964#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25963#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25962#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25961#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25960#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25959#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25958#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25957#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25956#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25955#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25954#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25953#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25952#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25951#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25950#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25949#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25948#L18-3 assume !!(init_nondet_~i~0#1 < ~N~0);havoc init_nondet_#t~nondet1#1;call write~int#1(init_nondet_#t~nondet1#1, init_nondet_~x#1.base, init_nondet_~x#1.offset + 4 * init_nondet_~i~0#1, 4);havoc init_nondet_#t~nondet1#1; 25941#L18-2 init_nondet_#t~post2#1 := init_nondet_~i~0#1;init_nondet_~i~0#1 := 1 + init_nondet_#t~post2#1;havoc init_nondet_#t~post2#1; 25940#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 25890#L16 havoc init_nondet_#t~nondet1#1, init_nondet_#t~post2#1, init_nondet_~x#1.base, init_nondet_~x#1.offset, init_nondet_~i~0#1;havoc init_nondet_#in~x#1.base, init_nondet_#in~x#1.offset;assume { :end_inline_init_nondet } true;havoc main_~temp~0#1;havoc main_~ret~1#1;havoc main_~ret2~0#1;havoc main_~ret5~0#1;assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 25891#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25900#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25901#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25925#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25926#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25938#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25939#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26097#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26096#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26095#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26094#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26093#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26092#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26091#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26090#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26089#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26088#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26087#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26086#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26085#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26084#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26083#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26082#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26081#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26080#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26079#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26078#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26077#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26076#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26075#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26073#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26074#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26394#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26393#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26392#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26391#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26390#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26389#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26388#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26387#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26386#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26385#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26384#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26383#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26382#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26381#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26380#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26379#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26378#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26377#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26375#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26374#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 26373#L30 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 25943#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25942#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 25905#L29-4 assume 0 != rangesum_~cnt~0#1;rangesum_#res#1 := (if (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 <= 2147483647 then (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 else (if rangesum_~ret~0#1 < 0 && 0 != rangesum_~ret~0#1 % rangesum_~cnt~0#1 then (if rangesum_~cnt~0#1 < 0 then rangesum_~ret~0#1 / rangesum_~cnt~0#1 - 1 else 1 + rangesum_~ret~0#1 / rangesum_~cnt~0#1) else rangesum_~ret~0#1 / rangesum_~cnt~0#1) % 4294967296 - 4294967296); 25906#rangesum_returnLabel#1 main_#t~ret6#1 := rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;havoc rangesum_#in~x#1.base, rangesum_#in~x#1.offset;assume { :end_inline_rangesum } true;main_~ret~1#1 := main_#t~ret6#1;havoc main_#t~ret6#1;call main_#t~mem7#1 := read~int#1(main_~#x~0#1.base, main_~#x~0#1.offset, 4);main_~temp~0#1 := main_#t~mem7#1;havoc main_#t~mem7#1;call main_#t~mem8#1 := read~int#1(main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);call write~int#1(main_#t~mem8#1, main_~#x~0#1.base, main_~#x~0#1.offset, 4);havoc main_#t~mem8#1;call write~int#1(main_~temp~0#1, main_~#x~0#1.base, 4 + main_~#x~0#1.offset, 4);assume { :begin_inline_rangesum } true;rangesum_#in~x#1.base, rangesum_#in~x#1.offset := main_~#x~0#1.base, main_~#x~0#1.offset;havoc rangesum_#res#1;havoc rangesum_#t~mem3#1, rangesum_#t~post4#1, rangesum_~x#1.base, rangesum_~x#1.offset, rangesum_~i~1#1, rangesum_~ret~0#1, rangesum_~cnt~0#1;rangesum_~x#1.base, rangesum_~x#1.offset := rangesum_#in~x#1.base, rangesum_#in~x#1.offset;havoc rangesum_~i~1#1;havoc rangesum_~ret~0#1;rangesum_~ret~0#1 := 0;rangesum_~cnt~0#1 := 0;rangesum_~i~1#1 := 0; 25918#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26105#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26103#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26104#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26165#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26164#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26163#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26162#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26161#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26160#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26159#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26158#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26157#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26156#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26155#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26154#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26153#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26152#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26151#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26150#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26149#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26148#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26147#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26146#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26145#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26144#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26143#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26142#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26141#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26139#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26140#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26193#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26191#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26192#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26221#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26219#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26220#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26249#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26247#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26248#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26277#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26275#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26276#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26305#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26303#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26304#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26354#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25935#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25936#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25894#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25895#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25921#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25922#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 26353#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26351#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26349#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26347#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26345#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26343#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26341#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26339#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26337#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26335#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26333#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26331#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26329#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26327#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26325#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26323#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26321#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26319#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26317#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26315#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26313#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26312#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26109#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26108#L30-2 [2024-11-19 14:24:52,315 INFO L747 eck$LassoCheckResult]: Loop: 26108#L30-2 assume rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2);call rangesum_#t~mem3#1 := read~int#1(rangesum_~x#1.base, rangesum_~x#1.offset + 4 * rangesum_~i~1#1, 4);rangesum_~ret~0#1 := rangesum_~ret~0#1 + rangesum_#t~mem3#1;havoc rangesum_#t~mem3#1;rangesum_~cnt~0#1 := 1 + rangesum_~cnt~0#1; 26308#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 26107#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 26108#L30-2 [2024-11-19 14:24:52,315 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:52,315 INFO L85 PathProgramCache]: Analyzing trace with hash -1962889361, now seen corresponding path program 18 times [2024-11-19 14:24:52,315 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:52,315 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2007614025] [2024-11-19 14:24:52,315 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:24:52,316 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:52,402 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 26 check-sat command(s) [2024-11-19 14:24:52,402 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:53,421 INFO L134 CoverageAnalysis]: Checked inductivity of 1658 backedges. 594 proven. 461 refuted. 0 times theorem prover too weak. 603 trivial. 0 not checked. [2024-11-19 14:24:53,421 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-19 14:24:53,421 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2007614025] [2024-11-19 14:24:53,421 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2007614025] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-19 14:24:53,422 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [423542393] [2024-11-19 14:24:53,422 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-19 14:24:53,422 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-19 14:24:53,422 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-19 14:24:53,423 INFO L229 MonitoredProcess]: Starting monitored process 82 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-19 14:24:53,424 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (82)] Waiting until timeout for monitored process [2024-11-19 14:24:54,079 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 26 check-sat command(s) [2024-11-19 14:24:54,079 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-19 14:24:54,083 INFO L255 TraceCheckSpWp]: Trace formula consists of 561 conjuncts, 47 conjuncts are in the unsatisfiable core [2024-11-19 14:24:54,085 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-19 14:24:55,295 INFO L134 CoverageAnalysis]: Checked inductivity of 1658 backedges. 925 proven. 477 refuted. 0 times theorem prover too weak. 256 trivial. 0 not checked. [2024-11-19 14:24:55,295 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-19 14:24:56,645 INFO L134 CoverageAnalysis]: Checked inductivity of 1658 backedges. 925 proven. 477 refuted. 0 times theorem prover too weak. 256 trivial. 0 not checked. [2024-11-19 14:24:56,645 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [423542393] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-19 14:24:56,645 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-19 14:24:56,645 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [37, 47, 47] total 117 [2024-11-19 14:24:56,645 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2054075410] [2024-11-19 14:24:56,645 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-19 14:24:56,646 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-19 14:24:56,646 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-19 14:24:56,646 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 17 times [2024-11-19 14:24:56,646 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-19 14:24:56,646 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1346538144] [2024-11-19 14:24:56,646 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-19 14:24:56,646 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-19 14:24:56,649 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2024-11-19 14:24:56,649 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-19 14:24:56,649 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-19 14:24:56,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-19 14:24:56,652 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-19 14:24:56,703 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-19 14:24:56,704 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 117 interpolants. [2024-11-19 14:24:56,707 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=2107, Invalid=11465, Unknown=0, NotChecked=0, Total=13572 [2024-11-19 14:24:56,707 INFO L87 Difference]: Start difference. First operand 643 states and 682 transitions. cyclomatic complexity: 47 Second operand has 117 states, 117 states have (on average 2.9145299145299144) internal successors, (341), 117 states have internal predecessors, (341), 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)