./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 c7c6ca5d Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerTermination.xml -i ../sv-benchmarks/c/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-?-c7c6ca5-m [2024-11-09 15:29:06,616 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-09 15:29:06,666 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Termination-32bit-Automizer_Default.epf [2024-11-09 15:29:06,673 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-09 15:29:06,673 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-09 15:29:06,690 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-09 15:29:06,690 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-09 15:29:06,690 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-09 15:29:06,691 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-09 15:29:06,691 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-09 15:29:06,691 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-09 15:29:06,691 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-09 15:29:06,692 INFO L153 SettingsManager]: * Use SBE=true [2024-11-09 15:29:06,692 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2024-11-09 15:29:06,693 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2024-11-09 15:29:06,693 INFO L153 SettingsManager]: * Use old map elimination=false [2024-11-09 15:29:06,694 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2024-11-09 15:29:06,694 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2024-11-09 15:29:06,695 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2024-11-09 15:29:06,695 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-09 15:29:06,695 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2024-11-09 15:29:06,699 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-09 15:29:06,700 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-09 15:29:06,700 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-09 15:29:06,700 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-09 15:29:06,700 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2024-11-09 15:29:06,700 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2024-11-09 15:29:06,700 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2024-11-09 15:29:06,700 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-09 15:29:06,700 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-11-09 15:29:06,701 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-09 15:29:06,701 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-09 15:29:06,701 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2024-11-09 15:29:06,701 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-09 15:29:06,701 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-11-09 15:29:06,701 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-09 15:29:06,701 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-09 15:29:06,702 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-09 15:29:06,702 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2024-11-09 15:29:06,702 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-09 15:29:06,909 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-09 15:29:06,933 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-09 15:29:06,936 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-09 15:29:06,937 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-09 15:29:06,937 INFO L274 PluginConnector]: CDTParser initialized [2024-11-09 15:29:06,938 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/reducercommutativity/rangesum.i [2024-11-09 15:29:08,177 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-09 15:29:08,322 INFO L384 CDTParser]: Found 1 translation units. [2024-11-09 15:29:08,322 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/reducercommutativity/rangesum.i [2024-11-09 15:29:08,329 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/84c05992b/c1bfca7762c94dd086751feead0c35a0/FLAG8c026591d [2024-11-09 15:29:08,727 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/84c05992b/c1bfca7762c94dd086751feead0c35a0 [2024-11-09 15:29:08,729 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-09 15:29:08,731 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-09 15:29:08,732 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-09 15:29:08,732 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-09 15:29:08,736 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-09 15:29:08,736 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:08,737 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1e147948 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08, skipping insertion in model container [2024-11-09 15:29:08,737 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:08,754 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-09 15:29:08,927 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-09 15:29:08,937 INFO L200 MainTranslator]: Completed pre-run [2024-11-09 15:29:08,960 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-09 15:29:08,976 INFO L204 MainTranslator]: Completed translation [2024-11-09 15:29:08,977 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08 WrapperNode [2024-11-09 15:29:08,977 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-09 15:29:08,978 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-09 15:29:08,978 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-09 15:29:08,978 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-09 15:29:08,984 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:08,990 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,011 INFO L138 Inliner]: procedures = 17, calls = 23, calls flagged for inlining = 7, calls inlined = 7, statements flattened = 142 [2024-11-09 15:29:09,011 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-09 15:29:09,012 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-09 15:29:09,012 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-09 15:29:09,012 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-09 15:29:09,021 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,021 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,024 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,036 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-09 15:29:09,036 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,037 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,042 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,045 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,046 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,047 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,049 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-09 15:29:09,064 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-11-09 15:29:09,064 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-11-09 15:29:09,064 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-11-09 15:29:09,065 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (1/1) ... [2024-11-09 15:29:09,071 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:09,094 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:09,112 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:09,114 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2024-11-09 15:29:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-09 15:29:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-09 15:29:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-11-09 15:29:09,150 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-11-09 15:29:09,151 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-11-09 15:29:09,151 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-11-09 15:29:09,151 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-09 15:29:09,151 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-09 15:29:09,151 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-11-09 15:29:09,151 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-11-09 15:29:09,151 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-11-09 15:29:09,213 INFO L238 CfgBuilder]: Building ICFG [2024-11-09 15:29:09,214 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-09 15:29:09,401 INFO L? ?]: Removed 35 outVars from TransFormulas that were not future-live. [2024-11-09 15:29:09,401 INFO L287 CfgBuilder]: Performing block encoding [2024-11-09 15:29:09,412 INFO L311 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-09 15:29:09,413 INFO L316 CfgBuilder]: Removed 5 assume(true) statements. [2024-11-09 15:29:09,413 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.11 03:29:09 BoogieIcfgContainer [2024-11-09 15:29:09,413 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-11-09 15:29:09,414 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2024-11-09 15:29:09,414 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2024-11-09 15:29:09,417 INFO L274 PluginConnector]: BuchiAutomizer initialized [2024-11-09 15:29:09,418 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-09 15:29:09,418 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "CDTParser AST 09.11 03:29:08" (1/3) ... [2024-11-09 15:29:09,419 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@22f35571 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 09.11 03:29:09, skipping insertion in model container [2024-11-09 15:29:09,419 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-09 15:29:09,419 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.11 03:29:08" (2/3) ... [2024-11-09 15:29:09,419 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@22f35571 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 09.11 03:29:09, skipping insertion in model container [2024-11-09 15:29:09,419 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2024-11-09 15:29:09,419 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.11 03:29:09" (3/3) ... [2024-11-09 15:29:09,420 INFO L332 chiAutomizerObserver]: Analyzing ICFG rangesum.i [2024-11-09 15:29:09,461 INFO L300 stractBuchiCegarLoop]: Interprodecural is true [2024-11-09 15:29:09,461 INFO L301 stractBuchiCegarLoop]: Hoare is None [2024-11-09 15:29:09,461 INFO L302 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2024-11-09 15:29:09,462 INFO L303 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2024-11-09 15:29:09,462 INFO L304 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2024-11-09 15:29:09,462 INFO L305 stractBuchiCegarLoop]: Difference is false [2024-11-09 15:29:09,462 INFO L306 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2024-11-09 15:29:09,462 INFO L310 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2024-11-09 15:29:09,465 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-09 15:29:09,478 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-09 15:29:09,478 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:09,478 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:09,483 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-11-09 15:29:09,483 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-09 15:29:09,483 INFO L332 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2024-11-09 15:29:09,484 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-09 15:29:09,486 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-09 15:29:09,486 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:09,486 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:09,486 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1] [2024-11-09 15:29:09,486 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-09 15:29:09,494 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-09 15:29:09,494 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-09 15:29:09,502 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:09,503 INFO L85 PathProgramCache]: Analyzing trace with hash 29858, now seen corresponding path program 1 times [2024-11-09 15:29:09,512 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:09,512 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [335681418] [2024-11-09 15:29:09,513 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:09,513 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:09,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:09,605 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:09,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:09,637 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:09,640 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:09,640 INFO L85 PathProgramCache]: Analyzing trace with hash 1379, now seen corresponding path program 1 times [2024-11-09 15:29:09,641 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:09,641 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [862467957] [2024-11-09 15:29:09,641 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:09,641 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:09,653 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:09,653 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:09,659 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:09,663 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:09,664 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:09,665 INFO L85 PathProgramCache]: Analyzing trace with hash 28693956, now seen corresponding path program 1 times [2024-11-09 15:29:09,665 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:09,665 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [468939786] [2024-11-09 15:29:09,665 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:09,666 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:09,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:09,701 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:09,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:09,725 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:10,039 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:29:10,039 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:29:10,039 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:29:10,039 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:29:10,040 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-09 15:29:10,040 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,040 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:29:10,040 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:29:10,040 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration1_Lasso [2024-11-09 15:29:10,040 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:29:10,040 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:29:10,056 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,067 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,070 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,073 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,075 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,077 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,079 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,082 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,084 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,088 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,091 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,095 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,110 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,113 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,116 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,323 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,325 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,327 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,329 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,331 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:10,612 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:29:10,616 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-09 15:29:10,617 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,617 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,619 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,620 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2024-11-09 15:29:10,622 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,633 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,634 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:10,634 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,634 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,634 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,636 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:10,636 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:10,638 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,649 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Ended with exit code 0 [2024-11-09 15:29:10,651 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,651 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,653 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,656 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2024-11-09 15:29:10,657 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,668 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,668 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:10,668 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,668 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,668 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,671 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:10,672 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:10,673 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,685 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-09 15:29:10,686 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,686 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,688 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,690 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2024-11-09 15:29:10,691 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,701 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,702 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:10,702 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,702 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,702 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,703 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:10,703 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:10,707 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,718 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-09 15:29:10,719 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,719 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,720 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,722 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2024-11-09 15:29:10,723 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,734 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,735 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:10,735 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,735 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,735 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,736 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:10,736 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:10,737 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,748 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-09 15:29:10,749 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,749 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,750 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,752 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2024-11-09 15:29:10,753 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,762 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,762 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:10,762 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,763 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,763 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,763 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:10,763 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:10,764 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,775 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:10,775 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,775 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,776 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,777 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2024-11-09 15:29:10,778 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,788 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,788 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:10,788 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,788 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,788 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,789 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:10,789 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:10,790 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,801 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Ended with exit code 0 [2024-11-09 15:29:10,801 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,801 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,803 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,804 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2024-11-09 15:29:10,805 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,815 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,815 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:10,815 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,815 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,815 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,816 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:10,816 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:10,817 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,828 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:10,829 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,829 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,830 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,831 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2024-11-09 15:29:10,832 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,842 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,842 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:10,842 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,842 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,843 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,843 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:10,843 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:10,846 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,856 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Ended with exit code 0 [2024-11-09 15:29:10,857 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,857 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,858 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,859 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Waiting until timeout for monitored process [2024-11-09 15:29:10,860 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,869 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,869 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:10,869 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,869 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,870 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,870 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:10,870 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:10,871 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,883 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Ended with exit code 0 [2024-11-09 15:29:10,883 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,883 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,885 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,886 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Waiting until timeout for monitored process [2024-11-09 15:29:10,887 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,896 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,896 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:10,897 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,897 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,897 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,897 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:10,897 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:10,898 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,909 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Ended with exit code 0 [2024-11-09 15:29:10,910 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,910 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,911 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,911 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Waiting until timeout for monitored process [2024-11-09 15:29:10,912 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,922 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,922 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,922 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,922 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,924 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:10,924 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:10,930 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,940 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-09 15:29:10,941 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,941 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,942 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,942 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Waiting until timeout for monitored process [2024-11-09 15:29:10,943 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,953 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,954 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,954 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,954 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,955 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:10,955 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:10,958 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:10,971 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Ended with exit code 0 [2024-11-09 15:29:10,971 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:10,971 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:10,974 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:10,975 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Waiting until timeout for monitored process [2024-11-09 15:29:10,975 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:10,985 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:10,985 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:10,985 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:10,985 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:10,987 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:10,987 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:10,989 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:11,000 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:11,001 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,001 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,003 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,004 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Waiting until timeout for monitored process [2024-11-09 15:29:11,005 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:11,015 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:11,015 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:11,015 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:11,015 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:11,015 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:11,015 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:11,016 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:11,017 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:11,029 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (15)] Ended with exit code 0 [2024-11-09 15:29:11,029 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,029 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,031 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,032 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Waiting until timeout for monitored process [2024-11-09 15:29:11,033 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:11,045 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:11,045 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:11,045 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:11,045 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:11,045 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:11,047 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:11,047 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:11,048 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:11,058 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (16)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:11,059 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,059 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,060 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,061 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Waiting until timeout for monitored process [2024-11-09 15:29:11,062 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:11,072 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:11,072 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:11,072 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:11,072 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:11,074 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:11,074 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:11,076 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:11,087 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (17)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:11,087 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,088 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,089 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Waiting until timeout for monitored process [2024-11-09 15:29:11,090 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:11,099 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:11,100 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:11,100 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:11,100 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:11,102 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:11,102 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:11,106 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:11,117 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (18)] Ended with exit code 0 [2024-11-09 15:29:11,118 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,118 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,120 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,121 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Waiting until timeout for monitored process [2024-11-09 15:29:11,121 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:11,131 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:11,131 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:11,131 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:11,131 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:11,131 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:11,132 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:11,132 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:11,133 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:11,143 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (19)] Ended with exit code 0 [2024-11-09 15:29:11,143 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,143 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,145 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,147 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (20)] Waiting until timeout for monitored process [2024-11-09 15:29:11,147 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:11,158 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:11,158 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:11,158 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:11,158 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:11,162 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:11,162 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:11,166 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:11,176 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-09 15:29:11,177 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,177 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,178 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,178 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Waiting until timeout for monitored process [2024-11-09 15:29:11,180 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:11,189 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:11,190 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:11,190 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:11,190 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:11,194 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:11,194 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:11,202 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-09 15:29:11,228 INFO L443 ModelExtractionUtils]: Simplification made 12 calls to the SMT solver. [2024-11-09 15:29:11,229 INFO L444 ModelExtractionUtils]: 1 out of 19 variables were initially zero. Simplification set additionally 14 variables to zero. [2024-11-09 15:29:11,230 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,230 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,252 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,253 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Waiting until timeout for monitored process [2024-11-09 15:29:11,254 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-09 15:29:11,264 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-09 15:29:11,264 INFO L474 LassoAnalysis]: Proved termination. [2024-11-09 15:29:11,265 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-09 15:29:11,275 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (21)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:11,303 INFO L156 tatePredicateManager]: 8 out of 8 supporting invariants were superfluous and have been removed [2024-11-09 15:29:11,312 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: #length [2024-11-09 15:29:11,313 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Cannot backtranslate array access to array IdentifierExpression[#length,GLOBAL] [2024-11-09 15:29:11,314 WARN L976 BoogieBacktranslator]: Unfinished Backtranslation: Unknown variable: ~x!offset [2024-11-09 15:29:11,326 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:11,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:11,348 INFO L255 TraceCheckSpWp]: Trace formula consists of 43 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-09 15:29:11,349 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:11,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:11,367 INFO L255 TraceCheckSpWp]: Trace formula consists of 13 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-09 15:29:11,367 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:11,392 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:29:11,420 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2024-11-09 15:29:11,422 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-09 15:29:11,455 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-09 15:29:11,460 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-09 15:29:11,464 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-09 15:29:11,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2024-11-09 15:29:11,468 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 52 transitions. Stem has 3 letters. Loop has 2 letters. [2024-11-09 15:29:11,469 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:11,469 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 52 transitions. Stem has 5 letters. Loop has 2 letters. [2024-11-09 15:29:11,469 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:11,469 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 52 transitions. Stem has 3 letters. Loop has 4 letters. [2024-11-09 15:29:11,469 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:11,470 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 65 states and 100 transitions. [2024-11-09 15:29:11,474 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-09 15:29:11,477 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 65 states to 23 states and 36 transitions. [2024-11-09 15:29:11,477 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 20 [2024-11-09 15:29:11,477 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 21 [2024-11-09 15:29:11,478 INFO L73 IsDeterministic]: Start isDeterministic. Operand 23 states and 36 transitions. [2024-11-09 15:29:11,478 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2024-11-09 15:29:11,478 INFO L218 hiAutomatonCegarLoop]: Abstraction has 23 states and 36 transitions. [2024-11-09 15:29:11,490 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states and 36 transitions. [2024-11-09 15:29:11,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2024-11-09 15:29:11,496 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-09 15:29:11,496 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 36 transitions. [2024-11-09 15:29:11,497 INFO L240 hiAutomatonCegarLoop]: Abstraction has 23 states and 36 transitions. [2024-11-09 15:29:11,497 INFO L425 stractBuchiCegarLoop]: Abstraction has 23 states and 36 transitions. [2024-11-09 15:29:11,497 INFO L332 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2024-11-09 15:29:11,497 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 23 states and 36 transitions. [2024-11-09 15:29:11,498 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-09 15:29:11,498 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:11,498 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:11,498 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1] [2024-11-09 15:29:11,498 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:11,498 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-09 15:29:11,499 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-09 15:29:11,499 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:11,499 INFO L85 PathProgramCache]: Analyzing trace with hash 28693898, now seen corresponding path program 1 times [2024-11-09 15:29:11,499 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:11,499 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [897309161] [2024-11-09 15:29:11,499 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:11,499 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:11,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:11,569 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:29:11,569 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:11,569 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [897309161] [2024-11-09 15:29:11,570 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [897309161] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 15:29:11,570 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 15:29:11,570 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-11-09 15:29:11,570 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1214091126] [2024-11-09 15:29:11,571 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 15:29:11,572 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:11,573 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:11,573 INFO L85 PathProgramCache]: Analyzing trace with hash 56764, now seen corresponding path program 1 times [2024-11-09 15:29:11,573 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:11,573 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [28557096] [2024-11-09 15:29:11,573 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:11,573 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:11,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:11,579 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:11,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:11,584 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:11,627 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:29:11,627 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:29:11,627 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:29:11,627 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:29:11,627 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-09 15:29:11,627 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,627 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:29:11,627 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:29:11,627 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration2_Loop [2024-11-09 15:29:11,627 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:29:11,627 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:29:11,628 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:11,634 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:11,667 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:29:11,668 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-09 15:29:11,669 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,669 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,671 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,672 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Waiting until timeout for monitored process [2024-11-09 15:29:11,673 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-09 15:29:11,673 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-09 15:29:11,697 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (23)] Ended with exit code 0 [2024-11-09 15:29:11,698 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,698 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,699 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,700 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (24)] Waiting until timeout for monitored process [2024-11-09 15:29:11,701 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-09 15:29:11,701 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-09 15:29:11,818 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-09 15:29:11,823 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-09 15:29:11,823 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:29:11,823 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:29:11,823 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:29:11,823 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:29:11,823 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-09 15:29:11,823 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,823 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:29:11,823 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:29:11,823 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration2_Loop [2024-11-09 15:29:11,823 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:29:11,823 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:29:11,824 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:11,833 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:11,869 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:29:11,870 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-09 15:29:11,870 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,870 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,871 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,872 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Waiting until timeout for monitored process [2024-11-09 15:29:11,873 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:11,883 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:11,883 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:11,883 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:11,883 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:11,883 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:11,884 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:11,884 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:11,886 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-09 15:29:11,890 INFO L443 ModelExtractionUtils]: Simplification made 3 calls to the SMT solver. [2024-11-09 15:29:11,891 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-09 15:29:11,891 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:11,891 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:11,893 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:11,895 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Waiting until timeout for monitored process [2024-11-09 15:29:11,895 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-09 15:29:11,895 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-09 15:29:11,895 INFO L474 LassoAnalysis]: Proved termination. [2024-11-09 15:29:11,896 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-09 15:29:11,906 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (25)] Ended with exit code 0 [2024-11-09 15:29:11,907 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-09 15:29:11,925 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:11,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:11,942 INFO L255 TraceCheckSpWp]: Trace formula consists of 58 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-09 15:29:11,943 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:11,952 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:11,953 WARN L253 TraceCheckSpWp]: Trace formula consists of 6 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-09 15:29:11,953 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:11,999 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (26)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:12,016 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (22)] Ended with exit code 0 [2024-11-09 15:29:12,041 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:29:12,041 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-09 15:29:12,042 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-09 15:29:12,074 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-09 15:29:12,076 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-09 15:29:12,077 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-09 15:29:12,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2024-11-09 15:29:12,077 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 5 letters. Loop has 3 letters. [2024-11-09 15:29:12,077 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:12,077 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 8 letters. Loop has 3 letters. [2024-11-09 15:29:12,078 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:12,078 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 6 states and 36 transitions. Stem has 5 letters. Loop has 6 letters. [2024-11-09 15:29:12,078 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:12,078 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 45 states and 74 transitions. [2024-11-09 15:29:12,079 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-09 15:29:12,080 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 45 states to 31 states and 48 transitions. [2024-11-09 15:29:12,083 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2024-11-09 15:29:12,083 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 24 [2024-11-09 15:29:12,083 INFO L73 IsDeterministic]: Start isDeterministic. Operand 31 states and 48 transitions. [2024-11-09 15:29:12,083 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:12,083 INFO L218 hiAutomatonCegarLoop]: Abstraction has 31 states and 48 transitions. [2024-11-09 15:29:12,084 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states and 48 transitions. [2024-11-09 15:29:12,085 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 29. [2024-11-09 15:29:12,087 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-09 15:29:12,088 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 45 transitions. [2024-11-09 15:29:12,089 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 45 transitions. [2024-11-09 15:29:12,090 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:12,091 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-11-09 15:29:12,092 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-11-09 15:29:12,093 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-09 15:29:12,121 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:12,121 INFO L93 Difference]: Finished difference Result 30 states and 43 transitions. [2024-11-09 15:29:12,121 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 30 states and 43 transitions. [2024-11-09 15:29:12,122 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-09 15:29:12,122 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 30 states to 30 states and 43 transitions. [2024-11-09 15:29:12,122 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2024-11-09 15:29:12,123 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22 [2024-11-09 15:29:12,123 INFO L73 IsDeterministic]: Start isDeterministic. Operand 30 states and 43 transitions. [2024-11-09 15:29:12,123 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:12,123 INFO L218 hiAutomatonCegarLoop]: Abstraction has 30 states and 43 transitions. [2024-11-09 15:29:12,123 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states and 43 transitions. [2024-11-09 15:29:12,124 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 29. [2024-11-09 15:29:12,124 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-09 15:29:12,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 42 transitions. [2024-11-09 15:29:12,125 INFO L240 hiAutomatonCegarLoop]: Abstraction has 29 states and 42 transitions. [2024-11-09 15:29:12,125 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-11-09 15:29:12,127 INFO L425 stractBuchiCegarLoop]: Abstraction has 29 states and 42 transitions. [2024-11-09 15:29:12,127 INFO L332 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2024-11-09 15:29:12,127 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 29 states and 42 transitions. [2024-11-09 15:29:12,127 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-09 15:29:12,127 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:12,127 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:12,128 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:29:12,128 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:12,128 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-09 15:29:12,128 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-09 15:29:12,128 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:12,128 INFO L85 PathProgramCache]: Analyzing trace with hash 123162479, now seen corresponding path program 1 times [2024-11-09 15:29:12,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:12,128 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1742114538] [2024-11-09 15:29:12,129 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:12,129 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:12,148 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:12,212 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-09 15:29:12,212 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:12,213 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1742114538] [2024-11-09 15:29:12,213 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1742114538] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:12,213 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2021310276] [2024-11-09 15:29:12,213 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:12,213 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:12,213 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:12,215 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-09 15:29:12,216 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-09 15:29:12,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:12,252 INFO L255 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-09 15:29:12,253 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:12,283 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-09 15:29:12,283 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:12,299 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-09 15:29:12,300 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2021310276] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:12,300 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:12,300 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 7 [2024-11-09 15:29:12,300 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1700024632] [2024-11-09 15:29:12,300 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:12,300 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:12,301 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:12,301 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 1 times [2024-11-09 15:29:12,301 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:12,301 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [572549198] [2024-11-09 15:29:12,301 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:12,301 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:12,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:12,306 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:12,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:12,312 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:12,386 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:12,386 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-11-09 15:29:12,386 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=22, Unknown=0, NotChecked=0, Total=42 [2024-11-09 15:29:12,386 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-09 15:29:12,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:12,458 INFO L93 Difference]: Finished difference Result 32 states and 45 transitions. [2024-11-09 15:29:12,458 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 32 states and 45 transitions. [2024-11-09 15:29:12,458 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-09 15:29:12,459 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 32 states to 32 states and 45 transitions. [2024-11-09 15:29:12,459 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 22 [2024-11-09 15:29:12,459 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 22 [2024-11-09 15:29:12,460 INFO L73 IsDeterministic]: Start isDeterministic. Operand 32 states and 45 transitions. [2024-11-09 15:29:12,460 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:12,460 INFO L218 hiAutomatonCegarLoop]: Abstraction has 32 states and 45 transitions. [2024-11-09 15:29:12,460 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states and 45 transitions. [2024-11-09 15:29:12,461 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 31. [2024-11-09 15:29:12,461 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-09 15:29:12,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 44 transitions. [2024-11-09 15:29:12,463 INFO L240 hiAutomatonCegarLoop]: Abstraction has 31 states and 44 transitions. [2024-11-09 15:29:12,464 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-09 15:29:12,465 INFO L425 stractBuchiCegarLoop]: Abstraction has 31 states and 44 transitions. [2024-11-09 15:29:12,465 INFO L332 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2024-11-09 15:29:12,465 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 31 states and 44 transitions. [2024-11-09 15:29:12,465 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-09 15:29:12,465 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:12,466 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:12,466 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 1, 1, 1, 1, 1, 1] [2024-11-09 15:29:12,466 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:12,466 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-09 15:29:12,466 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-09 15:29:12,467 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:12,467 INFO L85 PathProgramCache]: Analyzing trace with hash -1898228851, now seen corresponding path program 2 times [2024-11-09 15:29:12,467 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:12,467 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1801936914] [2024-11-09 15:29:12,467 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:12,467 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:12,482 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:12,482 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:12,488 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:12,491 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:12,491 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:12,491 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 2 times [2024-11-09 15:29:12,492 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:12,492 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1858374496] [2024-11-09 15:29:12,492 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:12,492 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:12,500 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:12,500 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:12,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:12,508 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:12,508 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:12,508 INFO L85 PathProgramCache]: Analyzing trace with hash 1698716202, now seen corresponding path program 1 times [2024-11-09 15:29:12,508 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:12,509 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [549392223] [2024-11-09 15:29:12,509 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:12,509 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:12,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:12,598 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-09 15:29:12,598 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:12,598 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [549392223] [2024-11-09 15:29:12,598 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [549392223] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 15:29:12,598 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 15:29:12,598 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-09 15:29:12,598 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1947569485] [2024-11-09 15:29:12,598 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 15:29:12,662 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:12,663 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-09 15:29:12,663 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2024-11-09 15:29:12,663 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-09 15:29:12,712 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:12,713 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2024-11-09 15:29:12,713 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 40 states and 51 transitions. [2024-11-09 15:29:12,713 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-09 15:29:12,714 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 40 states to 39 states and 50 transitions. [2024-11-09 15:29:12,714 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 28 [2024-11-09 15:29:12,714 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 28 [2024-11-09 15:29:12,714 INFO L73 IsDeterministic]: Start isDeterministic. Operand 39 states and 50 transitions. [2024-11-09 15:29:12,714 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:12,714 INFO L218 hiAutomatonCegarLoop]: Abstraction has 39 states and 50 transitions. [2024-11-09 15:29:12,714 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states and 50 transitions. [2024-11-09 15:29:12,715 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 36. [2024-11-09 15:29:12,716 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-09 15:29:12,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 47 transitions. [2024-11-09 15:29:12,716 INFO L240 hiAutomatonCegarLoop]: Abstraction has 36 states and 47 transitions. [2024-11-09 15:29:12,717 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-09 15:29:12,717 INFO L425 stractBuchiCegarLoop]: Abstraction has 36 states and 47 transitions. [2024-11-09 15:29:12,717 INFO L332 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2024-11-09 15:29:12,717 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 36 states and 47 transitions. [2024-11-09 15:29:12,718 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 11 [2024-11-09 15:29:12,718 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:12,718 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:12,718 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:29:12,718 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:12,718 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-09 15:29:12,719 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-09 15:29:12,719 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:12,719 INFO L85 PathProgramCache]: Analyzing trace with hash 1698718124, now seen corresponding path program 1 times [2024-11-09 15:29:12,719 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:12,719 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1327164710] [2024-11-09 15:29:12,719 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:12,719 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:12,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:12,730 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:12,737 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:12,740 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:12,740 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:12,740 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 3 times [2024-11-09 15:29:12,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:12,741 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1709689964] [2024-11-09 15:29:12,741 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:12,741 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:12,744 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:12,744 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:12,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:12,748 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:12,749 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:12,749 INFO L85 PathProgramCache]: Analyzing trace with hash -1087986773, now seen corresponding path program 1 times [2024-11-09 15:29:12,749 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:12,749 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1414518992] [2024-11-09 15:29:12,749 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:12,749 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:12,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:12,864 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-09 15:29:12,864 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:12,864 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1414518992] [2024-11-09 15:29:12,865 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1414518992] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:12,865 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1385331582] [2024-11-09 15:29:12,865 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:12,865 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:12,865 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:12,866 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-09 15:29:12,868 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-09 15:29:12,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:12,915 INFO L255 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 8 conjuncts are in the unsatisfiable core [2024-11-09 15:29:12,916 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:12,991 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-09 15:29:12,991 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:13,052 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-09 15:29:13,052 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1385331582] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:13,052 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:13,052 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8, 8] total 13 [2024-11-09 15:29:13,053 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2029238527] [2024-11-09 15:29:13,053 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:13,123 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:13,124 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-11-09 15:29:13,124 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=133, Unknown=0, NotChecked=0, Total=182 [2024-11-09 15:29:13,124 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-09 15:29:13,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:13,339 INFO L93 Difference]: Finished difference Result 75 states and 94 transitions. [2024-11-09 15:29:13,339 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 75 states and 94 transitions. [2024-11-09 15:29:13,340 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-09 15:29:13,340 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 75 states to 64 states and 82 transitions. [2024-11-09 15:29:13,340 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 45 [2024-11-09 15:29:13,341 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 51 [2024-11-09 15:29:13,341 INFO L73 IsDeterministic]: Start isDeterministic. Operand 64 states and 82 transitions. [2024-11-09 15:29:13,341 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:13,341 INFO L218 hiAutomatonCegarLoop]: Abstraction has 64 states and 82 transitions. [2024-11-09 15:29:13,341 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states and 82 transitions. [2024-11-09 15:29:13,343 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 60. [2024-11-09 15:29:13,343 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-09 15:29:13,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 78 transitions. [2024-11-09 15:29:13,344 INFO L240 hiAutomatonCegarLoop]: Abstraction has 60 states and 78 transitions. [2024-11-09 15:29:13,344 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-11-09 15:29:13,345 INFO L425 stractBuchiCegarLoop]: Abstraction has 60 states and 78 transitions. [2024-11-09 15:29:13,345 INFO L332 stractBuchiCegarLoop]: ======== Iteration 6 ============ [2024-11-09 15:29:13,345 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 60 states and 78 transitions. [2024-11-09 15:29:13,345 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-09 15:29:13,345 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:13,345 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:13,346 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 3, 2, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:29:13,346 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:13,346 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-09 15:29:13,346 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-09 15:29:13,346 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:13,346 INFO L85 PathProgramCache]: Analyzing trace with hash -154124210, now seen corresponding path program 2 times [2024-11-09 15:29:13,347 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:13,347 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [515013211] [2024-11-09 15:29:13,347 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:13,347 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:13,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:13,356 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:13,361 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:13,366 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:13,367 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:13,367 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 4 times [2024-11-09 15:29:13,367 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:13,367 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1677997893] [2024-11-09 15:29:13,367 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:13,367 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:13,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:13,374 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:13,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:13,381 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:13,382 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:13,382 INFO L85 PathProgramCache]: Analyzing trace with hash -194270775, now seen corresponding path program 2 times [2024-11-09 15:29:13,382 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:13,382 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1485068731] [2024-11-09 15:29:13,382 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:13,382 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:13,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:13,512 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 4 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:29:13,512 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:13,512 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1485068731] [2024-11-09 15:29:13,512 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1485068731] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:13,512 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2143466431] [2024-11-09 15:29:13,513 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-09 15:29:13,513 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:13,513 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:13,514 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-09 15:29:13,515 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-09 15:29:13,560 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-09 15:29:13,561 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:13,561 INFO L255 TraceCheckSpWp]: Trace formula consists of 108 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-09 15:29:13,562 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:13,626 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-09 15:29:13,627 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:13,751 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-09 15:29:13,752 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2143466431] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:13,752 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:13,752 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 5, 5] total 13 [2024-11-09 15:29:13,752 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1959289720] [2024-11-09 15:29:13,752 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:13,816 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:13,817 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2024-11-09 15:29:13,817 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=112, Unknown=0, NotChecked=0, Total=156 [2024-11-09 15:29:13,817 INFO L87 Difference]: Start difference. First operand 60 states and 78 transitions. cyclomatic complexity: 25 Second operand has 13 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 13 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-09 15:29:14,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:14,041 INFO L93 Difference]: Finished difference Result 75 states and 89 transitions. [2024-11-09 15:29:14,041 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 75 states and 89 transitions. [2024-11-09 15:29:14,042 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 15 [2024-11-09 15:29:14,042 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 75 states to 73 states and 87 transitions. [2024-11-09 15:29:14,042 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 57 [2024-11-09 15:29:14,042 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 57 [2024-11-09 15:29:14,042 INFO L73 IsDeterministic]: Start isDeterministic. Operand 73 states and 87 transitions. [2024-11-09 15:29:14,042 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:14,042 INFO L218 hiAutomatonCegarLoop]: Abstraction has 73 states and 87 transitions. [2024-11-09 15:29:14,043 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 73 states and 87 transitions. [2024-11-09 15:29:14,045 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 73 to 68. [2024-11-09 15:29:14,045 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-09 15:29:14,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 82 transitions. [2024-11-09 15:29:14,046 INFO L240 hiAutomatonCegarLoop]: Abstraction has 68 states and 82 transitions. [2024-11-09 15:29:14,046 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2024-11-09 15:29:14,047 INFO L425 stractBuchiCegarLoop]: Abstraction has 68 states and 82 transitions. [2024-11-09 15:29:14,047 INFO L332 stractBuchiCegarLoop]: ======== Iteration 7 ============ [2024-11-09 15:29:14,047 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 68 states and 82 transitions. [2024-11-09 15:29:14,048 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-09 15:29:14,048 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:14,048 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:14,048 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [3, 3, 3, 2, 2, 1, 1, 1, 1, 1] [2024-11-09 15:29:14,048 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:14,049 INFO L745 eck$LassoCheckResult]: Stem: 1061#$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; 1050#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; 1042#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; 1043#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; 1057#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; 1058#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; 1059#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; 1089#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; 1055#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; 1056#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 1028#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; 1029#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1034#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1035#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1092#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1091#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1084#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1082#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1032#L30 [2024-11-09 15:29:14,049 INFO L747 eck$LassoCheckResult]: Loop: 1032#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; 1033#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1081#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1032#L30 [2024-11-09 15:29:14,049 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:14,049 INFO L85 PathProgramCache]: Analyzing trace with hash -194268853, now seen corresponding path program 3 times [2024-11-09 15:29:14,049 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:14,049 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [652145642] [2024-11-09 15:29:14,049 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:14,050 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:14,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:14,061 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:14,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:14,072 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:14,073 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:14,073 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 5 times [2024-11-09 15:29:14,073 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:14,073 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1806008170] [2024-11-09 15:29:14,073 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:14,073 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:14,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:14,078 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:14,079 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:14,084 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:14,084 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:14,084 INFO L85 PathProgramCache]: Analyzing trace with hash -2142422100, now seen corresponding path program 3 times [2024-11-09 15:29:14,084 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:14,084 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [680596851] [2024-11-09 15:29:14,084 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:14,084 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:14,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:14,193 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-11-09 15:29:14,193 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:14,193 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [680596851] [2024-11-09 15:29:14,194 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [680596851] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:14,194 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [836533966] [2024-11-09 15:29:14,194 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-09 15:29:14,194 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:14,194 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:14,196 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-09 15:29:14,198 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-09 15:29:14,249 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2024-11-09 15:29:14,249 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:14,250 INFO L255 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 10 conjuncts are in the unsatisfiable core [2024-11-09 15:29:14,251 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:14,348 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-09 15:29:14,348 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:14,410 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-09 15:29:14,411 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [836533966] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:14,411 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:14,411 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10, 10] total 16 [2024-11-09 15:29:14,411 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1045448879] [2024-11-09 15:29:14,411 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:14,468 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:14,468 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2024-11-09 15:29:14,469 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=200, Unknown=0, NotChecked=0, Total=272 [2024-11-09 15:29:14,469 INFO L87 Difference]: Start difference. First operand 68 states and 82 transitions. cyclomatic complexity: 21 Second operand has 17 states, 16 states have (on average 2.625) internal successors, (42), 17 states have internal predecessors, (42), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:14,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:14,615 INFO L93 Difference]: Finished difference Result 112 states and 131 transitions. [2024-11-09 15:29:14,615 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 112 states and 131 transitions. [2024-11-09 15:29:14,615 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 15 [2024-11-09 15:29:14,616 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 112 states to 98 states and 117 transitions. [2024-11-09 15:29:14,616 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 74 [2024-11-09 15:29:14,616 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 80 [2024-11-09 15:29:14,616 INFO L73 IsDeterministic]: Start isDeterministic. Operand 98 states and 117 transitions. [2024-11-09 15:29:14,616 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:14,617 INFO L218 hiAutomatonCegarLoop]: Abstraction has 98 states and 117 transitions. [2024-11-09 15:29:14,617 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states and 117 transitions. [2024-11-09 15:29:14,621 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 91. [2024-11-09 15:29:14,622 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-09 15:29:14,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 109 transitions. [2024-11-09 15:29:14,624 INFO L240 hiAutomatonCegarLoop]: Abstraction has 91 states and 109 transitions. [2024-11-09 15:29:14,625 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2024-11-09 15:29:14,625 INFO L425 stractBuchiCegarLoop]: Abstraction has 91 states and 109 transitions. [2024-11-09 15:29:14,627 INFO L332 stractBuchiCegarLoop]: ======== Iteration 8 ============ [2024-11-09 15:29:14,628 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 91 states and 109 transitions. [2024-11-09 15:29:14,628 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-09 15:29:14,628 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:14,628 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:14,629 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [4, 4, 3, 2, 2, 1, 1, 1, 1, 1] [2024-11-09 15:29:14,629 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:14,629 INFO L745 eck$LassoCheckResult]: Stem: 1383#$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; 1370#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; 1366#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; 1367#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; 1379#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; 1380#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; 1381#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; 1419#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; 1418#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; 1416#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; 1415#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; 1414#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 1413#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; 1412#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1356#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1357#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1411#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1406#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1404#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1401#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1402#L30 [2024-11-09 15:29:14,629 INFO L747 eck$LassoCheckResult]: Loop: 1402#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; 1405#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1403#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1402#L30 [2024-11-09 15:29:14,629 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:14,629 INFO L85 PathProgramCache]: Analyzing trace with hash -326653975, now seen corresponding path program 4 times [2024-11-09 15:29:14,629 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:14,629 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [201049004] [2024-11-09 15:29:14,630 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:14,630 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:14,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:14,649 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:14,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:14,659 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:14,660 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:14,660 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 6 times [2024-11-09 15:29:14,660 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:14,660 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [297678619] [2024-11-09 15:29:14,660 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:14,660 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:14,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:14,667 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:14,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:14,669 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:14,669 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:14,669 INFO L85 PathProgramCache]: Analyzing trace with hash 1047353422, now seen corresponding path program 4 times [2024-11-09 15:29:14,669 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:14,669 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [974459964] [2024-11-09 15:29:14,669 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:14,670 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:14,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:14,792 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 21 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-11-09 15:29:14,793 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:14,793 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [974459964] [2024-11-09 15:29:14,793 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [974459964] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:14,793 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1335416307] [2024-11-09 15:29:14,793 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-09 15:29:14,793 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:14,793 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:14,795 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-09 15:29:14,796 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-09 15:29:14,847 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-09 15:29:14,847 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:14,848 INFO L255 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-09 15:29:14,849 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:14,918 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-09 15:29:14,918 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:14,989 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-09 15:29:14,990 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1335416307] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:14,990 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:14,990 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 6, 6] total 17 [2024-11-09 15:29:14,990 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [145133206] [2024-11-09 15:29:14,990 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:15,046 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:15,046 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2024-11-09 15:29:15,046 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=246, Unknown=0, NotChecked=0, Total=306 [2024-11-09 15:29:15,046 INFO L87 Difference]: Start difference. First operand 91 states and 109 transitions. cyclomatic complexity: 25 Second operand has 18 states, 17 states have (on average 2.5294117647058822) internal successors, (43), 18 states have internal predecessors, (43), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:15,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:15,366 INFO L93 Difference]: Finished difference Result 174 states and 209 transitions. [2024-11-09 15:29:15,366 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 174 states and 209 transitions. [2024-11-09 15:29:15,367 INFO L131 ngComponentsAnalysis]: Automaton has 6 accepting balls. 15 [2024-11-09 15:29:15,368 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 174 states to 152 states and 185 transitions. [2024-11-09 15:29:15,368 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 116 [2024-11-09 15:29:15,368 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 128 [2024-11-09 15:29:15,368 INFO L73 IsDeterministic]: Start isDeterministic. Operand 152 states and 185 transitions. [2024-11-09 15:29:15,369 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:15,369 INFO L218 hiAutomatonCegarLoop]: Abstraction has 152 states and 185 transitions. [2024-11-09 15:29:15,369 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 152 states and 185 transitions. [2024-11-09 15:29:15,375 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 152 to 130. [2024-11-09 15:29:15,378 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 130 states have (on average 1.2461538461538462) internal successors, (162), 129 states have internal predecessors, (162), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:15,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 162 transitions. [2024-11-09 15:29:15,379 INFO L240 hiAutomatonCegarLoop]: Abstraction has 130 states and 162 transitions. [2024-11-09 15:29:15,382 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-11-09 15:29:15,383 INFO L425 stractBuchiCegarLoop]: Abstraction has 130 states and 162 transitions. [2024-11-09 15:29:15,383 INFO L332 stractBuchiCegarLoop]: ======== Iteration 9 ============ [2024-11-09 15:29:15,383 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 130 states and 162 transitions. [2024-11-09 15:29:15,383 INFO L131 ngComponentsAnalysis]: Automaton has 5 accepting balls. 13 [2024-11-09 15:29:15,383 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:15,383 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:15,384 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 4, 3, 3, 1, 1, 1, 1, 1] [2024-11-09 15:29:15,384 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:15,384 INFO L745 eck$LassoCheckResult]: Stem: 1817#$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; 1805#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; 1798#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; 1799#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; 1813#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; 1814#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; 1815#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; 1860#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; 1859#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; 1858#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; 1857#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; 1855#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; 1854#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; 1853#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 1852#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; 1851#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1850#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1848#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1812#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1790#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1791#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1821#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1845#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 1844#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1841#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1840#L30 [2024-11-09 15:29:15,384 INFO L747 eck$LassoCheckResult]: Loop: 1840#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; 1843#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 1839#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 1840#L30 [2024-11-09 15:29:15,384 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:15,384 INFO L85 PathProgramCache]: Analyzing trace with hash -185017358, now seen corresponding path program 5 times [2024-11-09 15:29:15,384 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:15,384 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [561933027] [2024-11-09 15:29:15,384 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:15,385 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:15,395 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:15,395 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:15,404 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:15,408 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:15,408 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:15,408 INFO L85 PathProgramCache]: Analyzing trace with hash 59702, now seen corresponding path program 7 times [2024-11-09 15:29:15,408 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:15,408 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1243472044] [2024-11-09 15:29:15,408 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:15,408 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:15,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:15,411 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:15,416 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:15,418 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:15,418 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:15,420 INFO L85 PathProgramCache]: Analyzing trace with hash -1409041499, now seen corresponding path program 5 times [2024-11-09 15:29:15,420 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:15,420 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1498972488] [2024-11-09 15:29:15,420 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:15,420 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:15,437 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:15,437 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:15,453 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:15,458 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:16,329 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:29:16,329 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:29:16,329 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:29:16,329 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:29:16,329 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-09 15:29:16,330 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:16,330 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:29:16,330 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:29:16,330 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration9_Lasso [2024-11-09 15:29:16,330 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:29:16,330 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:29:16,332 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,336 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,337 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,338 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,339 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,340 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,341 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,344 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,345 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,351 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,352 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,354 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,356 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,359 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,360 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,366 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,368 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,369 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,370 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,372 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,559 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,560 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,562 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,563 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,564 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,565 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,566 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,567 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,577 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:16,846 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:29:16,846 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-09 15:29:16,846 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:16,847 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:16,848 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:16,849 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:16,852 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Waiting until timeout for monitored process [2024-11-09 15:29:16,861 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:16,861 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:16,861 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:16,861 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:16,861 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:16,862 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:16,862 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:16,863 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:16,875 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (32)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:16,875 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:16,876 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:16,877 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:16,877 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Waiting until timeout for monitored process [2024-11-09 15:29:16,878 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:16,890 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:16,890 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:16,890 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:16,890 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:16,890 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:16,891 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:16,891 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:16,893 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:16,906 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (33)] Ended with exit code 0 [2024-11-09 15:29:16,907 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:16,907 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:16,908 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:16,909 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Waiting until timeout for monitored process [2024-11-09 15:29:16,910 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:16,920 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:16,920 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:16,921 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:16,921 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:16,921 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:16,921 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:16,921 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:16,922 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:16,936 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (34)] Ended with exit code 0 [2024-11-09 15:29:16,936 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:16,937 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:16,938 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:16,938 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (35)] Waiting until timeout for monitored process [2024-11-09 15:29:16,940 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:16,951 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:16,951 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:16,951 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:16,951 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:16,951 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:16,952 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:16,952 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:16,953 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:16,965 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-09 15:29:16,965 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:16,966 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:16,967 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:16,972 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Waiting until timeout for monitored process [2024-11-09 15:29:16,973 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:16,983 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:16,983 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:16,983 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:16,983 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:16,983 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:16,984 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:16,984 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:16,985 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:16,996 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (36)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:16,996 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:16,996 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:16,997 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:16,998 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Waiting until timeout for monitored process [2024-11-09 15:29:16,999 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,009 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,009 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,010 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,010 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,010 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,010 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,010 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,011 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,022 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (37)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:17,023 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,023 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,024 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,025 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Waiting until timeout for monitored process [2024-11-09 15:29:17,025 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,035 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,035 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,035 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,035 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,035 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,036 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,036 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,040 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,050 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (38)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:17,051 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,051 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,052 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,053 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Waiting until timeout for monitored process [2024-11-09 15:29:17,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-09 15:29:17,064 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,064 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,064 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,064 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,064 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,064 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,064 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,066 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,080 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (39)] Ended with exit code 0 [2024-11-09 15:29:17,080 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,081 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,082 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,083 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Waiting until timeout for monitored process [2024-11-09 15:29:17,084 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,095 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,096 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,096 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,096 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,096 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,096 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,096 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,097 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,107 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (40)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:17,108 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,108 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,109 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,110 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Waiting until timeout for monitored process [2024-11-09 15:29:17,110 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,120 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,120 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,121 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,121 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,121 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,121 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,121 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,122 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,133 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (41)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:17,133 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,134 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,135 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,135 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Waiting until timeout for monitored process [2024-11-09 15:29:17,136 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,145 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,146 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,146 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,146 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,146 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,146 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,146 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,147 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,158 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (42)] Ended with exit code 0 [2024-11-09 15:29:17,158 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,159 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,159 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,160 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Waiting until timeout for monitored process [2024-11-09 15:29:17,161 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,170 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,170 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,170 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,170 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,172 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:17,172 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:17,174 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,184 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (43)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:17,185 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,185 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,186 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,187 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Waiting until timeout for monitored process [2024-11-09 15:29:17,188 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,197 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,197 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,197 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,197 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,199 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:17,199 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:17,202 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,212 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (44)] Ended with exit code 0 [2024-11-09 15:29:17,213 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,213 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,214 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,215 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Waiting until timeout for monitored process [2024-11-09 15:29:17,216 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,225 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,225 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,226 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,226 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,226 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,226 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,226 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,227 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,237 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (45)] Ended with exit code 0 [2024-11-09 15:29:17,238 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,238 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,239 INFO L229 MonitoredProcess]: Starting monitored process 46 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,240 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Waiting until timeout for monitored process [2024-11-09 15:29:17,241 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,250 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,250 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,250 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,250 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,251 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:17,251 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:17,254 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,264 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (46)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:17,264 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,265 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,265 INFO L229 MonitoredProcess]: Starting monitored process 47 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,266 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (47)] Waiting until timeout for monitored process [2024-11-09 15:29:17,267 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,276 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,276 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,276 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,276 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,277 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:17,277 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:17,279 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,289 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-09 15:29:17,290 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,290 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,291 INFO L229 MonitoredProcess]: Starting monitored process 48 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,292 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Waiting until timeout for monitored process [2024-11-09 15:29:17,292 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,302 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,302 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,302 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,302 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,302 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,302 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,302 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,303 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,313 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (48)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:17,314 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,314 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,315 INFO L229 MonitoredProcess]: Starting monitored process 49 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,315 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Waiting until timeout for monitored process [2024-11-09 15:29:17,316 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,325 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,325 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,325 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,325 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,325 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,326 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,326 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,327 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,336 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (49)] Ended with exit code 0 [2024-11-09 15:29:17,337 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,337 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,338 INFO L229 MonitoredProcess]: Starting monitored process 50 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,338 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Waiting until timeout for monitored process [2024-11-09 15:29:17,339 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,349 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,349 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,349 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,349 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,349 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,349 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,349 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,350 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,360 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (50)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:17,360 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,360 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,361 INFO L229 MonitoredProcess]: Starting monitored process 51 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,362 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (51)] Waiting until timeout for monitored process [2024-11-09 15:29:17,363 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,372 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,372 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:17,372 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,372 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,372 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,372 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:17,372 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:17,373 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,383 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-09 15:29:17,383 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,384 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,384 INFO L229 MonitoredProcess]: Starting monitored process 52 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,385 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Waiting until timeout for monitored process [2024-11-09 15:29:17,386 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,395 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,395 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,395 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,395 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,396 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:17,396 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:17,398 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,408 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (52)] Ended with exit code 0 [2024-11-09 15:29:17,409 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,409 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,410 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-09 15:29:17,411 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-09 15:29:17,411 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,421 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,421 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,421 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,421 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,422 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:17,422 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:17,425 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,435 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (53)] Ended with exit code 0 [2024-11-09 15:29:17,436 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,436 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,438 INFO L229 MonitoredProcess]: Starting monitored process 54 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,438 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Waiting until timeout for monitored process [2024-11-09 15:29:17,439 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,448 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,448 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,448 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,448 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,450 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:17,450 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:17,454 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:17,464 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (54)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:17,465 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,465 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,466 INFO L229 MonitoredProcess]: Starting monitored process 55 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,466 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Waiting until timeout for monitored process [2024-11-09 15:29:17,467 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:17,477 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:17,477 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:17,477 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:17,477 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:17,480 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:17,481 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:17,489 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-09 15:29:17,512 INFO L443 ModelExtractionUtils]: Simplification made 19 calls to the SMT solver. [2024-11-09 15:29:17,512 INFO L444 ModelExtractionUtils]: 3 out of 19 variables were initially zero. Simplification set additionally 13 variables to zero. [2024-11-09 15:29:17,512 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:17,512 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:17,513 INFO L229 MonitoredProcess]: Starting monitored process 56 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:17,514 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Waiting until timeout for monitored process [2024-11-09 15:29:17,514 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-09 15:29:17,524 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-09 15:29:17,525 INFO L474 LassoAnalysis]: Proved termination. [2024-11-09 15:29:17,525 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-09 15:29:17,536 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (55)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:17,550 INFO L156 tatePredicateManager]: 9 out of 9 supporting invariants were superfluous and have been removed [2024-11-09 15:29:17,559 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:17,581 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:17,582 INFO L255 TraceCheckSpWp]: Trace formula consists of 126 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-09 15:29:17,583 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:17,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:17,613 INFO L255 TraceCheckSpWp]: Trace formula consists of 14 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-09 15:29:17,614 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:17,622 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:29:17,623 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2024-11-09 15:29:17,623 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 130 states and 162 transitions. cyclomatic complexity: 39 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-09 15:29:17,643 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 130 states and 162 transitions. cyclomatic complexity: 39. 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 160 states and 196 transitions. Complement of second has 7 states. [2024-11-09 15:29:17,644 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2024-11-09 15:29:17,644 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-09 15:29:17,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 12 transitions. [2024-11-09 15:29:17,644 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 25 letters. Loop has 3 letters. [2024-11-09 15:29:17,645 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:17,645 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 28 letters. Loop has 3 letters. [2024-11-09 15:29:17,645 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:17,645 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 12 transitions. Stem has 25 letters. Loop has 6 letters. [2024-11-09 15:29:17,645 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:17,645 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 160 states and 196 transitions. [2024-11-09 15:29:17,646 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 10 [2024-11-09 15:29:17,646 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 160 states to 144 states and 178 transitions. [2024-11-09 15:29:17,646 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 89 [2024-11-09 15:29:17,647 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 119 [2024-11-09 15:29:17,647 INFO L73 IsDeterministic]: Start isDeterministic. Operand 144 states and 178 transitions. [2024-11-09 15:29:17,647 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:17,647 INFO L218 hiAutomatonCegarLoop]: Abstraction has 144 states and 178 transitions. [2024-11-09 15:29:17,647 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states and 178 transitions. [2024-11-09 15:29:17,650 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 133. [2024-11-09 15:29:17,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 133 states, 133 states have (on average 1.255639097744361) internal successors, (167), 132 states have internal predecessors, (167), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:17,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 133 states to 133 states and 167 transitions. [2024-11-09 15:29:17,651 INFO L240 hiAutomatonCegarLoop]: Abstraction has 133 states and 167 transitions. [2024-11-09 15:29:17,651 INFO L425 stractBuchiCegarLoop]: Abstraction has 133 states and 167 transitions. [2024-11-09 15:29:17,651 INFO L332 stractBuchiCegarLoop]: ======== Iteration 10 ============ [2024-11-09 15:29:17,651 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 133 states and 167 transitions. [2024-11-09 15:29:17,651 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 10 [2024-11-09 15:29:17,651 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:17,651 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:17,652 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-09 15:29:17,652 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1] [2024-11-09 15:29:17,652 INFO L745 eck$LassoCheckResult]: Stem: 2249#$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; 2239#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; 2230#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; 2231#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; 2244#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; 2245#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; 2246#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; 2300#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 2301#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; 2343#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2342#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2341#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2340#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2339#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2338#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2337#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 2336#L29-4 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 2335#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; 2334#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2333#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2332#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2331#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2329#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2262#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2257#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 2247#L29-9 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 2248#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; 2236#L57-3 [2024-11-09 15:29:17,652 INFO L747 eck$LassoCheckResult]: Loop: 2236#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; 2237#L57-2 main_#t~post12#1 := main_~i~2#1;main_~i~2#1 := 1 + main_#t~post12#1;havoc main_#t~post12#1; 2236#L57-3 [2024-11-09 15:29:17,653 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:17,653 INFO L85 PathProgramCache]: Analyzing trace with hash -1751120697, now seen corresponding path program 1 times [2024-11-09 15:29:17,653 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:17,653 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1477958076] [2024-11-09 15:29:17,653 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:17,653 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:17,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:17,675 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:17,687 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:17,689 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:17,690 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:17,690 INFO L85 PathProgramCache]: Analyzing trace with hash 3427, now seen corresponding path program 1 times [2024-11-09 15:29:17,690 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:17,690 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2125504574] [2024-11-09 15:29:17,690 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:17,690 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:17,693 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:17,693 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:17,693 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:17,694 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:17,695 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:17,695 INFO L85 PathProgramCache]: Analyzing trace with hash 800192681, now seen corresponding path program 1 times [2024-11-09 15:29:17,695 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:17,695 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [3436226] [2024-11-09 15:29:17,695 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:17,695 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:17,705 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:17,705 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:17,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:17,714 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:18,084 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (56)] Ended with exit code 0 [2024-11-09 15:29:18,490 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:29:18,490 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:29:18,490 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:29:18,490 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:29:18,490 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-09 15:29:18,490 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:18,490 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:29:18,490 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:29:18,490 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration10_Lasso [2024-11-09 15:29:18,490 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:29:18,490 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:29:18,491 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,493 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,494 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,496 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,497 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,499 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,500 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,501 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,502 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,503 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,505 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,508 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,513 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,514 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,515 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,517 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,518 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,524 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,533 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,534 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,690 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,692 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,693 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,695 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,696 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,697 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,699 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,700 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,702 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,703 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,704 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,706 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:18,891 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:29:18,891 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-09 15:29:18,891 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:18,891 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:18,893 INFO L229 MonitoredProcess]: Starting monitored process 57 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:18,894 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Waiting until timeout for monitored process [2024-11-09 15:29:18,894 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:18,904 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:18,904 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:18,905 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:18,905 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:18,905 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:18,905 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:18,905 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:18,906 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:18,916 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (57)] Ended with exit code 0 [2024-11-09 15:29:18,916 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:18,917 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:18,918 INFO L229 MonitoredProcess]: Starting monitored process 58 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:18,919 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (58)] Waiting until timeout for monitored process [2024-11-09 15:29:18,919 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:18,929 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:18,929 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:18,929 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:18,929 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:18,929 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:18,929 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:18,930 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:18,933 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:18,944 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-09 15:29:18,944 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:18,944 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:18,945 INFO L229 MonitoredProcess]: Starting monitored process 59 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:18,946 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Waiting until timeout for monitored process [2024-11-09 15:29:18,947 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:18,957 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:18,957 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:18,957 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:18,957 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:18,957 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:18,957 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:18,957 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:18,958 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:18,969 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (59)] Ended with exit code 0 [2024-11-09 15:29:18,970 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:18,970 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:18,971 INFO L229 MonitoredProcess]: Starting monitored process 60 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:18,971 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Waiting until timeout for monitored process [2024-11-09 15:29:18,972 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:18,981 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:18,981 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:18,981 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:18,982 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:18,982 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:18,982 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:18,982 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:18,983 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:18,993 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (60)] Ended with exit code 0 [2024-11-09 15:29:18,993 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:18,993 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:18,994 INFO L229 MonitoredProcess]: Starting monitored process 61 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:18,995 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Waiting until timeout for monitored process [2024-11-09 15:29:18,996 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,006 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,006 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,006 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,006 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,007 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:19,007 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:19,009 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,019 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (61)] Ended with exit code 0 [2024-11-09 15:29:19,019 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,020 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,021 INFO L229 MonitoredProcess]: Starting monitored process 62 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,022 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Waiting until timeout for monitored process [2024-11-09 15:29:19,023 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,032 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,032 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,032 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,033 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,033 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,033 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,033 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,034 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,044 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (62)] Ended with exit code 0 [2024-11-09 15:29:19,044 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,044 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,045 INFO L229 MonitoredProcess]: Starting monitored process 63 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,046 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (63)] Waiting until timeout for monitored process [2024-11-09 15:29:19,047 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,056 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,056 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,057 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,057 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,057 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,057 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,057 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,058 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,068 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-09 15:29:19,068 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,068 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,069 INFO L229 MonitoredProcess]: Starting monitored process 64 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,070 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Waiting until timeout for monitored process [2024-11-09 15:29:19,070 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,081 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,081 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,081 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,081 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,081 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,081 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,081 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,082 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,092 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (64)] Ended with exit code 0 [2024-11-09 15:29:19,092 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,092 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,093 INFO L229 MonitoredProcess]: Starting monitored process 65 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,094 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Waiting until timeout for monitored process [2024-11-09 15:29:19,095 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,104 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,104 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,104 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,104 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,104 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,104 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,104 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,105 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,115 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (65)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:19,116 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,116 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,117 INFO L229 MonitoredProcess]: Starting monitored process 66 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,117 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Waiting until timeout for monitored process [2024-11-09 15:29:19,118 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,127 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,128 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,128 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,128 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,128 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,128 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,128 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,129 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,139 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (66)] Ended with exit code 0 [2024-11-09 15:29:19,139 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,139 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,140 INFO L229 MonitoredProcess]: Starting monitored process 67 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,141 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Waiting until timeout for monitored process [2024-11-09 15:29:19,141 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,151 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,151 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,151 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,151 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,151 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,151 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,151 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,152 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,162 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (67)] Ended with exit code 0 [2024-11-09 15:29:19,162 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,162 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,164 INFO L229 MonitoredProcess]: Starting monitored process 68 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,164 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Waiting until timeout for monitored process [2024-11-09 15:29:19,165 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,174 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,174 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,174 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,174 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,174 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,175 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,175 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,176 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,185 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (68)] Ended with exit code 0 [2024-11-09 15:29:19,186 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,186 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,187 INFO L229 MonitoredProcess]: Starting monitored process 69 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,187 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Waiting until timeout for monitored process [2024-11-09 15:29:19,188 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,197 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,198 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,198 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,198 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,198 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,198 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,198 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,199 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,209 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (69)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:19,210 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,210 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,211 INFO L229 MonitoredProcess]: Starting monitored process 70 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,222 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Waiting until timeout for monitored process [2024-11-09 15:29:19,223 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,233 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,233 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,233 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,233 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,233 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,233 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,233 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,236 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,247 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (70)] Ended with exit code 0 [2024-11-09 15:29:19,247 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,247 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,248 INFO L229 MonitoredProcess]: Starting monitored process 71 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,249 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Waiting until timeout for monitored process [2024-11-09 15:29:19,250 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,260 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,260 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,260 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,260 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,260 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,261 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,261 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,262 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,272 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (71)] Ended with exit code 0 [2024-11-09 15:29:19,273 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,273 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,274 INFO L229 MonitoredProcess]: Starting monitored process 72 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,275 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Waiting until timeout for monitored process [2024-11-09 15:29:19,277 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,287 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,287 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,287 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,287 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,289 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:19,289 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:19,292 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,302 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (72)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:19,302 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,302 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,303 INFO L229 MonitoredProcess]: Starting monitored process 73 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,304 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Waiting until timeout for monitored process [2024-11-09 15:29:19,305 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,314 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,314 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,314 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,314 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,315 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:19,315 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:19,317 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,327 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (73)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:19,328 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,328 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,329 INFO L229 MonitoredProcess]: Starting monitored process 74 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,329 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Waiting until timeout for monitored process [2024-11-09 15:29:19,330 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,340 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,340 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,340 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,340 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,341 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:19,341 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:19,343 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,353 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (74)] Ended with exit code 0 [2024-11-09 15:29:19,354 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,354 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,355 INFO L229 MonitoredProcess]: Starting monitored process 75 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,355 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Waiting until timeout for monitored process [2024-11-09 15:29:19,356 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,366 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,366 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,366 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,366 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,366 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,366 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,366 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,367 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,378 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (75)] Ended with exit code 0 [2024-11-09 15:29:19,378 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,378 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,379 INFO L229 MonitoredProcess]: Starting monitored process 76 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,379 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Waiting until timeout for monitored process [2024-11-09 15:29:19,380 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,389 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,389 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:19,390 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,390 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,390 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,390 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:19,390 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:19,391 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,401 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (76)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:19,401 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,401 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,402 INFO L229 MonitoredProcess]: Starting monitored process 77 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,403 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Waiting until timeout for monitored process [2024-11-09 15:29:19,403 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,413 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,413 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,413 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,413 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,414 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:19,414 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:19,417 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,430 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (77)] Ended with exit code 0 [2024-11-09 15:29:19,430 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,430 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,431 INFO L229 MonitoredProcess]: Starting monitored process 78 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,432 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Waiting until timeout for monitored process [2024-11-09 15:29:19,433 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,443 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,443 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,443 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,443 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,444 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:19,444 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:19,446 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,457 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (78)] Ended with exit code 0 [2024-11-09 15:29:19,457 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,458 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,459 INFO L229 MonitoredProcess]: Starting monitored process 79 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,460 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Waiting until timeout for monitored process [2024-11-09 15:29:19,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-09 15:29:19,470 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,470 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,470 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,470 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,472 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:19,472 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:19,474 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,484 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (79)] Ended with exit code 0 [2024-11-09 15:29:19,485 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,485 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,486 INFO L229 MonitoredProcess]: Starting monitored process 80 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,487 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Waiting until timeout for monitored process [2024-11-09 15:29:19,487 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,497 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,497 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,497 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,497 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,498 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:19,498 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:19,500 INFO L488 LassoAnalysis]: Proving termination failed for this template and these settings. [2024-11-09 15:29:19,511 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (80)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:19,511 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,511 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,512 INFO L229 MonitoredProcess]: Starting monitored process 81 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,512 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Waiting until timeout for monitored process [2024-11-09 15:29:19,513 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:19,522 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:19,523 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:19,523 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:19,523 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:19,525 INFO L401 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2024-11-09 15:29:19,525 INFO L402 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2024-11-09 15:29:19,532 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-09 15:29:19,539 INFO L443 ModelExtractionUtils]: Simplification made 6 calls to the SMT solver. [2024-11-09 15:29:19,539 INFO L444 ModelExtractionUtils]: 9 out of 16 variables were initially zero. Simplification set additionally 4 variables to zero. [2024-11-09 15:29:19,539 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:19,539 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,540 INFO L229 MonitoredProcess]: Starting monitored process 82 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,540 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Waiting until timeout for monitored process [2024-11-09 15:29:19,541 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-09 15:29:19,551 INFO L438 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2024-11-09 15:29:19,551 INFO L474 LassoAnalysis]: Proved termination. [2024-11-09 15:29:19,551 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(~N~0, ULTIMATE.start_main_~i~2#1) = 1*~N~0 - 1*ULTIMATE.start_main_~i~2#1 Supporting invariants [] [2024-11-09 15:29:19,561 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (81)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:19,567 INFO L156 tatePredicateManager]: 4 out of 4 supporting invariants were superfluous and have been removed [2024-11-09 15:29:19,579 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:19,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:19,605 INFO L255 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-09 15:29:19,605 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:19,635 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:19,635 INFO L255 TraceCheckSpWp]: Trace formula consists of 15 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-09 15:29:19,636 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:19,645 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:29:19,646 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2024-11-09 15:29:19,646 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 133 states and 167 transitions. cyclomatic complexity: 41 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-09 15:29:19,664 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 133 states and 167 transitions. cyclomatic complexity: 41. 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 137 states and 174 transitions. Complement of second has 5 states. [2024-11-09 15:29:19,664 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-09 15:29:19,665 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-09 15:29:19,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 25 transitions. [2024-11-09 15:29:19,665 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 25 transitions. Stem has 27 letters. Loop has 2 letters. [2024-11-09 15:29:19,665 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:19,665 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 25 transitions. Stem has 29 letters. Loop has 2 letters. [2024-11-09 15:29:19,665 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:19,665 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 3 states and 25 transitions. Stem has 27 letters. Loop has 4 letters. [2024-11-09 15:29:19,665 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:19,665 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 137 states and 174 transitions. [2024-11-09 15:29:19,666 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:19,666 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 137 states to 64 states and 78 transitions. [2024-11-09 15:29:19,666 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 36 [2024-11-09 15:29:19,667 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 37 [2024-11-09 15:29:19,667 INFO L73 IsDeterministic]: Start isDeterministic. Operand 64 states and 78 transitions. [2024-11-09 15:29:19,667 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:19,667 INFO L218 hiAutomatonCegarLoop]: Abstraction has 64 states and 78 transitions. [2024-11-09 15:29:19,667 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states and 78 transitions. [2024-11-09 15:29:19,671 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 64. [2024-11-09 15:29:19,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 64 states, 64 states have (on average 1.21875) internal successors, (78), 63 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-09 15:29:19,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 78 transitions. [2024-11-09 15:29:19,672 INFO L240 hiAutomatonCegarLoop]: Abstraction has 64 states and 78 transitions. [2024-11-09 15:29:19,672 INFO L425 stractBuchiCegarLoop]: Abstraction has 64 states and 78 transitions. [2024-11-09 15:29:19,672 INFO L332 stractBuchiCegarLoop]: ======== Iteration 11 ============ [2024-11-09 15:29:19,672 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 64 states and 78 transitions. [2024-11-09 15:29:19,673 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:19,673 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:19,673 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:19,673 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [5, 5, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:29:19,674 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:19,674 INFO L745 eck$LassoCheckResult]: Stem: 2642#$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; 2632#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; 2626#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; 2627#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; 2639#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; 2640#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; 2637#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; 2638#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; 2655#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; 2654#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; 2653#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; 2651#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; 2647#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; 2646#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 2610#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; 2611#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2634#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2665#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2664#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2617#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2618#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2666#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 2648#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2615#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2644#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 2622#L29-4 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 2623#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; 2633#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2612#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2613#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2643#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2663#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2662#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2661#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2660#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 2658#L29-7 [2024-11-09 15:29:19,674 INFO L747 eck$LassoCheckResult]: Loop: 2658#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 2656#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 2657#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; 2658#L29-7 [2024-11-09 15:29:19,675 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:19,678 INFO L85 PathProgramCache]: Analyzing trace with hash 851452407, now seen corresponding path program 1 times [2024-11-09 15:29:19,678 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:19,678 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [181787694] [2024-11-09 15:29:19,678 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:19,678 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:19,688 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:19,831 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 2 proven. 10 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2024-11-09 15:29:19,832 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:19,832 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [181787694] [2024-11-09 15:29:19,832 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [181787694] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:19,832 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1439008617] [2024-11-09 15:29:19,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:19,832 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:19,832 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:19,834 INFO L229 MonitoredProcess]: Starting monitored process 83 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:19,835 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (83)] Waiting until timeout for monitored process [2024-11-09 15:29:19,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:19,895 INFO L255 TraceCheckSpWp]: Trace formula consists of 170 conjuncts, 11 conjuncts are in the unsatisfiable core [2024-11-09 15:29:19,896 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:20,013 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 16 proven. 21 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-11-09 15:29:20,013 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:20,121 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 16 proven. 21 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-11-09 15:29:20,122 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1439008617] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:20,122 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:20,122 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 12, 12] total 23 [2024-11-09 15:29:20,122 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1246224155] [2024-11-09 15:29:20,122 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:20,123 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:20,123 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:20,123 INFO L85 PathProgramCache]: Analyzing trace with hash 88157, now seen corresponding path program 1 times [2024-11-09 15:29:20,123 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:20,123 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1405553808] [2024-11-09 15:29:20,123 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:20,124 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:20,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:20,127 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:20,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:20,130 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:20,192 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:20,192 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2024-11-09 15:29:20,192 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=103, Invalid=403, Unknown=0, NotChecked=0, Total=506 [2024-11-09 15:29:20,192 INFO L87 Difference]: Start difference. First operand 64 states and 78 transitions. cyclomatic complexity: 20 Second operand has 23 states, 23 states have (on average 2.608695652173913) internal successors, (60), 23 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:20,420 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (82)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:20,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:20,598 INFO L93 Difference]: Finished difference Result 104 states and 125 transitions. [2024-11-09 15:29:20,598 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 104 states and 125 transitions. [2024-11-09 15:29:20,599 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 16 [2024-11-09 15:29:20,599 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 104 states to 96 states and 114 transitions. [2024-11-09 15:29:20,599 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 58 [2024-11-09 15:29:20,599 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 58 [2024-11-09 15:29:20,599 INFO L73 IsDeterministic]: Start isDeterministic. Operand 96 states and 114 transitions. [2024-11-09 15:29:20,599 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:20,599 INFO L218 hiAutomatonCegarLoop]: Abstraction has 96 states and 114 transitions. [2024-11-09 15:29:20,599 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states and 114 transitions. [2024-11-09 15:29:20,601 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 69. [2024-11-09 15:29:20,601 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-09 15:29:20,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 81 transitions. [2024-11-09 15:29:20,601 INFO L240 hiAutomatonCegarLoop]: Abstraction has 69 states and 81 transitions. [2024-11-09 15:29:20,604 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2024-11-09 15:29:20,605 INFO L425 stractBuchiCegarLoop]: Abstraction has 69 states and 81 transitions. [2024-11-09 15:29:20,605 INFO L332 stractBuchiCegarLoop]: ======== Iteration 12 ============ [2024-11-09 15:29:20,605 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 69 states and 81 transitions. [2024-11-09 15:29:20,605 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 11 [2024-11-09 15:29:20,605 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:20,605 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:20,606 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-09 15:29:20,607 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:20,607 INFO L745 eck$LassoCheckResult]: Stem: 3072#$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; 3061#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; 3056#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; 3057#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; 3068#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; 3069#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; 3070#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; 3091#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; 3090#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; 3083#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; 3082#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; 3080#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; 3078#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; 3077#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 3040#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; 3041#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3065#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3101#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3100#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3046#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3047#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3102#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3096#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3094#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3092#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3044#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; 3045#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3081#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3079#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; 3074#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3075#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 3050#L29-4 assume !(0 != rangesum_~cnt~0#1);rangesum_#res#1 := 0; 3051#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; 3062#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3042#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3043#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3063#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3064#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3099#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3098#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3097#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3087#L29-7 [2024-11-09 15:29:20,607 INFO L747 eck$LassoCheckResult]: Loop: 3087#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3095#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3093#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3087#L29-7 [2024-11-09 15:29:20,607 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:20,608 INFO L85 PathProgramCache]: Analyzing trace with hash 584366359, now seen corresponding path program 1 times [2024-11-09 15:29:20,608 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:20,608 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [325003329] [2024-11-09 15:29:20,609 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:20,609 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:20,624 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:20,667 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-09 15:29:20,667 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:20,667 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [325003329] [2024-11-09 15:29:20,667 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [325003329] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:20,667 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [220222550] [2024-11-09 15:29:20,667 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:20,667 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:20,667 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:20,669 INFO L229 MonitoredProcess]: Starting monitored process 84 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:20,670 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (84)] Waiting until timeout for monitored process [2024-11-09 15:29:20,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:20,734 INFO L255 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-11-09 15:29:20,735 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:20,756 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-09 15:29:20,756 INFO L307 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-11-09 15:29:20,756 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [220222550] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 15:29:20,756 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-11-09 15:29:20,756 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [5] total 6 [2024-11-09 15:29:20,756 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1003502308] [2024-11-09 15:29:20,756 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 15:29:20,757 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:20,757 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:20,757 INFO L85 PathProgramCache]: Analyzing trace with hash 88159, now seen corresponding path program 1 times [2024-11-09 15:29:20,757 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:20,757 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [564510367] [2024-11-09 15:29:20,757 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:20,757 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:20,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:20,760 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:20,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:20,761 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:20,781 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:29:20,781 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:29:20,781 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:29:20,781 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:29:20,782 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-09 15:29:20,782 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:20,782 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:29:20,782 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:29:20,782 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration12_Loop [2024-11-09 15:29:20,782 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:29:20,782 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:29:20,782 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:20,789 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:20,825 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:29:20,825 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-09 15:29:20,825 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:20,825 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:20,827 INFO L229 MonitoredProcess]: Starting monitored process 85 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:20,828 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Waiting until timeout for monitored process [2024-11-09 15:29:20,828 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-09 15:29:20,828 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-09 15:29:20,849 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (85)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:20,849 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:20,849 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:20,851 INFO L229 MonitoredProcess]: Starting monitored process 86 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:20,851 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (86)] Waiting until timeout for monitored process [2024-11-09 15:29:20,852 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-09 15:29:20,852 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-09 15:29:21,115 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-09 15:29:21,120 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (86)] Ended with exit code 0 [2024-11-09 15:29:21,120 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:29:21,120 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:29:21,120 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:29:21,120 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:29:21,120 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-09 15:29:21,120 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:21,120 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:29:21,120 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:29:21,120 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration12_Loop [2024-11-09 15:29:21,120 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:29:21,120 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:29:21,121 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:21,125 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:21,152 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:29:21,152 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-09 15:29:21,152 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:21,152 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:21,153 INFO L229 MonitoredProcess]: Starting monitored process 87 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:21,154 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (87)] Waiting until timeout for monitored process [2024-11-09 15:29:21,155 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:21,164 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:21,164 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:21,164 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:21,164 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:21,164 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:21,165 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:21,165 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:21,167 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-09 15:29:21,169 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2024-11-09 15:29:21,169 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-09 15:29:21,169 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:21,169 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:21,171 INFO L229 MonitoredProcess]: Starting monitored process 88 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:21,171 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (88)] Waiting until timeout for monitored process [2024-11-09 15:29:21,172 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-09 15:29:21,172 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-09 15:29:21,172 INFO L474 LassoAnalysis]: Proved termination. [2024-11-09 15:29:21,172 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(ULTIMATE.start_rangesum_~i~1#1, ~N~0) = -2*ULTIMATE.start_rangesum_~i~1#1 + 1*~N~0 Supporting invariants [] [2024-11-09 15:29:21,182 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (87)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:21,182 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-09 15:29:21,191 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:21,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:21,219 INFO L255 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-09 15:29:21,220 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:21,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:21,262 WARN L253 TraceCheckSpWp]: Trace formula consists of 6 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-09 15:29:21,263 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:21,278 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:29:21,279 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-09 15:29:21,279 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-09 15:29:21,305 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-09 15:29:21,306 INFO L141 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2024-11-09 15:29:21,306 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-09 15:29:21,306 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 22 transitions. [2024-11-09 15:29:21,306 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 22 transitions. Stem has 41 letters. Loop has 3 letters. [2024-11-09 15:29:21,307 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:21,307 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 22 transitions. Stem has 44 letters. Loop has 3 letters. [2024-11-09 15:29:21,307 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:21,307 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 4 states and 22 transitions. Stem has 41 letters. Loop has 6 letters. [2024-11-09 15:29:21,307 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:21,307 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 80 states and 93 transitions. [2024-11-09 15:29:21,308 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:21,308 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 80 states to 76 states and 89 transitions. [2024-11-09 15:29:21,308 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 35 [2024-11-09 15:29:21,308 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 36 [2024-11-09 15:29:21,308 INFO L73 IsDeterministic]: Start isDeterministic. Operand 76 states and 89 transitions. [2024-11-09 15:29:21,308 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:21,308 INFO L218 hiAutomatonCegarLoop]: Abstraction has 76 states and 89 transitions. [2024-11-09 15:29:21,308 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states and 89 transitions. [2024-11-09 15:29:21,310 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 72. [2024-11-09 15:29:21,310 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-09 15:29:21,310 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 84 transitions. [2024-11-09 15:29:21,310 INFO L240 hiAutomatonCegarLoop]: Abstraction has 72 states and 84 transitions. [2024-11-09 15:29:21,310 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:21,310 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-09 15:29:21,311 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=17, Unknown=0, NotChecked=0, Total=30 [2024-11-09 15:29:21,311 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-09 15:29:21,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:21,338 INFO L93 Difference]: Finished difference Result 105 states and 126 transitions. [2024-11-09 15:29:21,338 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 105 states and 126 transitions. [2024-11-09 15:29:21,338 INFO L131 ngComponentsAnalysis]: Automaton has 4 accepting balls. 12 [2024-11-09 15:29:21,339 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 105 states to 105 states and 126 transitions. [2024-11-09 15:29:21,339 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 51 [2024-11-09 15:29:21,339 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 51 [2024-11-09 15:29:21,339 INFO L73 IsDeterministic]: Start isDeterministic. Operand 105 states and 126 transitions. [2024-11-09 15:29:21,339 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:21,339 INFO L218 hiAutomatonCegarLoop]: Abstraction has 105 states and 126 transitions. [2024-11-09 15:29:21,339 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 105 states and 126 transitions. [2024-11-09 15:29:21,340 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 105 to 72. [2024-11-09 15:29:21,341 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-09 15:29:21,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 82 transitions. [2024-11-09 15:29:21,341 INFO L240 hiAutomatonCegarLoop]: Abstraction has 72 states and 82 transitions. [2024-11-09 15:29:21,341 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-11-09 15:29:21,342 INFO L425 stractBuchiCegarLoop]: Abstraction has 72 states and 82 transitions. [2024-11-09 15:29:21,342 INFO L332 stractBuchiCegarLoop]: ======== Iteration 13 ============ [2024-11-09 15:29:21,342 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 72 states and 82 transitions. [2024-11-09 15:29:21,342 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:21,342 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:21,342 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:21,343 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-09 15:29:21,343 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:21,343 INFO L745 eck$LassoCheckResult]: Stem: 3679#$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; 3667#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; 3662#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; 3663#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; 3675#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; 3676#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; 3677#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; 3693#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; 3692#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; 3691#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; 3690#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; 3689#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; 3688#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; 3687#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 3644#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; 3645#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3673#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3707#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3674#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3652#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3653#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3708#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3704#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3703#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3701#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3650#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; 3651#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3699#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 3697#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; 3683#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3684#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 3658#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); 3659#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; 3668#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3646#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3647#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3680#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3648#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3649#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3709#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3706#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 3705#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3669#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3670#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; 3700#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3698#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3695#L30-2 [2024-11-09 15:29:21,344 INFO L747 eck$LassoCheckResult]: Loop: 3695#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; 3696#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 3694#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 3695#L30-2 [2024-11-09 15:29:21,347 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:21,347 INFO L85 PathProgramCache]: Analyzing trace with hash -1458082658, now seen corresponding path program 1 times [2024-11-09 15:29:21,348 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:21,348 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1953312791] [2024-11-09 15:29:21,348 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:21,348 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:21,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unknown [2024-11-09 15:29:21,384 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [386835835] [2024-11-09 15:29:21,385 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:21,385 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:21,385 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:21,387 INFO L229 MonitoredProcess]: Starting monitored process 89 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:21,388 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (89)] Waiting until timeout for monitored process [2024-11-09 15:29:21,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:21,474 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:21,493 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:21,507 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:21,508 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:21,508 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 2 times [2024-11-09 15:29:21,508 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:21,508 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1121359157] [2024-11-09 15:29:21,508 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:21,508 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:21,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:21,511 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:21,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:21,514 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:21,514 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:21,514 INFO L85 PathProgramCache]: Analyzing trace with hash 1558822002, now seen corresponding path program 2 times [2024-11-09 15:29:21,514 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:21,514 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1733059908] [2024-11-09 15:29:21,514 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:21,514 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:21,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:21,649 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (88)] Ended with exit code 0 [2024-11-09 15:29:21,757 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-09 15:29:21,758 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:21,758 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1733059908] [2024-11-09 15:29:21,758 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1733059908] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:21,758 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1599853479] [2024-11-09 15:29:21,758 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-09 15:29:21,758 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:21,758 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:21,760 INFO L229 MonitoredProcess]: Starting monitored process 90 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:21,761 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (90)] Waiting until timeout for monitored process [2024-11-09 15:29:21,839 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-09 15:29:21,840 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:21,841 INFO L255 TraceCheckSpWp]: Trace formula consists of 220 conjuncts, 14 conjuncts are in the unsatisfiable core [2024-11-09 15:29:21,842 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:22,056 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-09 15:29:22,057 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:22,221 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-09 15:29:22,221 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1599853479] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:22,221 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:22,221 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 14, 14] total 25 [2024-11-09 15:29:22,221 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1694186204] [2024-11-09 15:29:22,221 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:22,271 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:22,271 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2024-11-09 15:29:22,271 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=134, Invalid=516, Unknown=0, NotChecked=0, Total=650 [2024-11-09 15:29:22,271 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-09 15:29:22,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:22,922 INFO L93 Difference]: Finished difference Result 241 states and 268 transitions. [2024-11-09 15:29:22,922 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 241 states and 268 transitions. [2024-11-09 15:29:22,923 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 19 [2024-11-09 15:29:22,923 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 241 states to 154 states and 179 transitions. [2024-11-09 15:29:22,923 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 81 [2024-11-09 15:29:22,924 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 81 [2024-11-09 15:29:22,924 INFO L73 IsDeterministic]: Start isDeterministic. Operand 154 states and 179 transitions. [2024-11-09 15:29:22,924 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:22,924 INFO L218 hiAutomatonCegarLoop]: Abstraction has 154 states and 179 transitions. [2024-11-09 15:29:22,924 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states and 179 transitions. [2024-11-09 15:29:22,925 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 109. [2024-11-09 15:29:22,925 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-09 15:29:22,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 124 transitions. [2024-11-09 15:29:22,926 INFO L240 hiAutomatonCegarLoop]: Abstraction has 109 states and 124 transitions. [2024-11-09 15:29:22,926 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2024-11-09 15:29:22,926 INFO L425 stractBuchiCegarLoop]: Abstraction has 109 states and 124 transitions. [2024-11-09 15:29:22,927 INFO L332 stractBuchiCegarLoop]: ======== Iteration 14 ============ [2024-11-09 15:29:22,927 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 109 states and 124 transitions. [2024-11-09 15:29:22,927 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2024-11-09 15:29:22,927 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:22,927 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:22,928 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-09 15:29:22,928 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:22,928 INFO L745 eck$LassoCheckResult]: Stem: 4360#$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; 4345#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; 4336#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; 4337#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; 4357#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; 4358#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; 4355#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; 4356#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; 4381#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; 4380#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; 4379#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; 4378#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; 4377#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; 4376#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; 4370#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; 4369#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 4319#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; 4320#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4352#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4398#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4395#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4327#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4328#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4414#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4373#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4372#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4371#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4325#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; 4326#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4413#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4412#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; 4386#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4387#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4385#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; 4366#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4367#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 4331#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); 4332#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; 4348#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4349#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4361#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4362#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4323#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4324#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4415#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4406#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4403#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4401#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4399#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; 4396#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4390#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4391#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; 4427#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4426#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4388#L30-2 [2024-11-09 15:29:22,928 INFO L747 eck$LassoCheckResult]: Loop: 4388#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; 4383#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4384#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4388#L30-2 [2024-11-09 15:29:22,929 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:22,929 INFO L85 PathProgramCache]: Analyzing trace with hash -1976417725, now seen corresponding path program 3 times [2024-11-09 15:29:22,929 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:22,929 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [745038414] [2024-11-09 15:29:22,929 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:22,929 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:22,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:23,194 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 45 proven. 35 refuted. 0 times theorem prover too weak. 42 trivial. 0 not checked. [2024-11-09 15:29:23,194 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:23,194 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [745038414] [2024-11-09 15:29:23,194 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [745038414] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:23,195 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2139481624] [2024-11-09 15:29:23,195 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-09 15:29:23,195 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:23,195 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:23,197 INFO L229 MonitoredProcess]: Starting monitored process 91 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:23,198 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (91)] Waiting until timeout for monitored process [2024-11-09 15:29:23,294 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2024-11-09 15:29:23,294 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:23,295 INFO L255 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 9 conjuncts are in the unsatisfiable core [2024-11-09 15:29:23,296 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:23,460 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-09 15:29:23,461 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:23,629 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-09 15:29:23,629 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2139481624] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:23,629 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:23,630 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9, 8] total 28 [2024-11-09 15:29:23,630 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1304895369] [2024-11-09 15:29:23,630 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:23,630 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:23,630 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:23,630 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 3 times [2024-11-09 15:29:23,630 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:23,630 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [89115236] [2024-11-09 15:29:23,630 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:23,631 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:23,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:23,634 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:23,635 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:23,636 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:23,683 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:23,683 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2024-11-09 15:29:23,683 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=144, Invalid=612, Unknown=0, NotChecked=0, Total=756 [2024-11-09 15:29:23,684 INFO L87 Difference]: Start difference. First operand 109 states and 124 transitions. cyclomatic complexity: 25 Second operand has 28 states, 28 states have (on average 3.357142857142857) internal successors, (94), 28 states have internal predecessors, (94), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:23,962 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:23,962 INFO L93 Difference]: Finished difference Result 145 states and 162 transitions. [2024-11-09 15:29:23,962 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 145 states and 162 transitions. [2024-11-09 15:29:23,962 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 10 [2024-11-09 15:29:23,963 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 145 states to 140 states and 157 transitions. [2024-11-09 15:29:23,963 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 77 [2024-11-09 15:29:23,963 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 77 [2024-11-09 15:29:23,963 INFO L73 IsDeterministic]: Start isDeterministic. Operand 140 states and 157 transitions. [2024-11-09 15:29:23,963 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:23,963 INFO L218 hiAutomatonCegarLoop]: Abstraction has 140 states and 157 transitions. [2024-11-09 15:29:23,963 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 140 states and 157 transitions. [2024-11-09 15:29:23,964 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 140 to 121. [2024-11-09 15:29:23,965 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 121 states, 121 states have (on average 1.1239669421487604) internal successors, (136), 120 states have internal predecessors, (136), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:23,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 121 states to 121 states and 136 transitions. [2024-11-09 15:29:23,965 INFO L240 hiAutomatonCegarLoop]: Abstraction has 121 states and 136 transitions. [2024-11-09 15:29:23,965 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2024-11-09 15:29:23,966 INFO L425 stractBuchiCegarLoop]: Abstraction has 121 states and 136 transitions. [2024-11-09 15:29:23,966 INFO L332 stractBuchiCegarLoop]: ======== Iteration 15 ============ [2024-11-09 15:29:23,966 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 121 states and 136 transitions. [2024-11-09 15:29:23,966 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2024-11-09 15:29:23,966 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:23,966 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:23,967 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-09 15:29:23,967 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:23,967 INFO L745 eck$LassoCheckResult]: Stem: 4986#$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; 4974#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; 4965#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; 4966#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; 4982#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; 4983#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; 4984#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; 5004#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; 5003#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; 5002#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; 5001#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; 5000#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; 4999#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; 4998#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; 4994#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; 4993#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 4948#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; 4949#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4980#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5020#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4981#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4958#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4959#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4992#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5018#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5015#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5016#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5008#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4997#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 4995#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 4956#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; 4957#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5013#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5014#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; 5010#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5017#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5009#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; 5011#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5005#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 5006#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); 4975#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; 4976#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 4950#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 4951#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5049#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5048#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5047#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5046#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5043#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5044#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5045#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5039#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5037#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5035#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5033#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; 5031#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5024#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5025#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; 5068#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5067#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5023#L30-2 [2024-11-09 15:29:23,967 INFO L747 eck$LassoCheckResult]: Loop: 5023#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; 5021#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5022#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5023#L30-2 [2024-11-09 15:29:23,967 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:23,968 INFO L85 PathProgramCache]: Analyzing trace with hash 380293024, now seen corresponding path program 4 times [2024-11-09 15:29:23,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:23,968 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [320923337] [2024-11-09 15:29:23,968 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:23,968 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:23,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:24,365 INFO L134 CoverageAnalysis]: Checked inductivity of 157 backedges. 70 proven. 87 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:29:24,365 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:24,365 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [320923337] [2024-11-09 15:29:24,365 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [320923337] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:24,365 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [286489725] [2024-11-09 15:29:24,366 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-09 15:29:24,366 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:24,366 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:24,367 INFO L229 MonitoredProcess]: Starting monitored process 92 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:24,368 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (92)] Waiting until timeout for monitored process [2024-11-09 15:29:24,463 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-09 15:29:24,463 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:24,464 INFO L255 TraceCheckSpWp]: Trace formula consists of 251 conjuncts, 16 conjuncts are in the unsatisfiable core [2024-11-09 15:29:24,465 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:24,653 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-09 15:29:24,653 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:24,793 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-09 15:29:24,793 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [286489725] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:24,793 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:24,793 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 17, 17] total 35 [2024-11-09 15:29:24,793 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1528257387] [2024-11-09 15:29:24,793 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:24,793 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:24,794 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:24,794 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 4 times [2024-11-09 15:29:24,794 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:24,794 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [217949586] [2024-11-09 15:29:24,794 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:24,794 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:24,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:24,797 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:24,798 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:24,799 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:24,850 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:24,850 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2024-11-09 15:29:24,850 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=227, Invalid=963, Unknown=0, NotChecked=0, Total=1190 [2024-11-09 15:29:24,851 INFO L87 Difference]: Start difference. First operand 121 states and 136 transitions. cyclomatic complexity: 25 Second operand has 35 states, 35 states have (on average 3.2) internal successors, (112), 35 states have internal predecessors, (112), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:25,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:25,122 INFO L93 Difference]: Finished difference Result 195 states and 212 transitions. [2024-11-09 15:29:25,122 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 195 states and 212 transitions. [2024-11-09 15:29:25,123 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2024-11-09 15:29:25,123 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 195 states to 124 states and 139 transitions. [2024-11-09 15:29:25,123 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 63 [2024-11-09 15:29:25,123 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 63 [2024-11-09 15:29:25,123 INFO L73 IsDeterministic]: Start isDeterministic. Operand 124 states and 139 transitions. [2024-11-09 15:29:25,124 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:25,124 INFO L218 hiAutomatonCegarLoop]: Abstraction has 124 states and 139 transitions. [2024-11-09 15:29:25,124 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 124 states and 139 transitions. [2024-11-09 15:29:25,125 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 124 to 123. [2024-11-09 15:29:25,125 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 123 states have (on average 1.1219512195121952) internal successors, (138), 122 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-09 15:29:25,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 138 transitions. [2024-11-09 15:29:25,125 INFO L240 hiAutomatonCegarLoop]: Abstraction has 123 states and 138 transitions. [2024-11-09 15:29:25,126 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2024-11-09 15:29:25,126 INFO L425 stractBuchiCegarLoop]: Abstraction has 123 states and 138 transitions. [2024-11-09 15:29:25,126 INFO L332 stractBuchiCegarLoop]: ======== Iteration 16 ============ [2024-11-09 15:29:25,126 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 123 states and 138 transitions. [2024-11-09 15:29:25,127 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2024-11-09 15:29:25,127 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:25,127 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:25,127 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-09 15:29:25,128 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:25,128 INFO L745 eck$LassoCheckResult]: Stem: 5690#$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; 5678#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; 5671#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; 5672#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; 5686#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; 5687#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; 5688#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; 5711#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; 5710#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; 5709#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; 5708#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; 5707#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; 5706#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; 5705#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; 5704#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; 5703#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; 5698#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; 5697#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 5656#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; 5657#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5666#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5667#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5725#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5724#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5723#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5722#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5720#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5716#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5717#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5702#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5701#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5699#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5664#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; 5665#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5684#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5685#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; 5695#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5696#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 5718#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; 5719#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5712#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 5713#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); 5679#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; 5680#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5753#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5691#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5682#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5683#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5754#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5755#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5660#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5661#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5692#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5745#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 5742#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5739#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5737#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; 5735#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5729#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5728#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; 5726#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5727#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5730#L30-2 [2024-11-09 15:29:25,128 INFO L747 eck$LassoCheckResult]: Loop: 5730#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; 5778#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 5777#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 5730#L30-2 [2024-11-09 15:29:25,128 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:25,128 INFO L85 PathProgramCache]: Analyzing trace with hash 466985150, now seen corresponding path program 5 times [2024-11-09 15:29:25,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:25,129 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [344044724] [2024-11-09 15:29:25,129 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:25,129 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:25,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unknown [2024-11-09 15:29:25,154 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1668494499] [2024-11-09 15:29:25,154 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-09 15:29:25,154 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:25,154 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:25,156 INFO L229 MonitoredProcess]: Starting monitored process 93 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:25,171 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (93)] Waiting until timeout for monitored process [2024-11-09 15:29:25,276 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 8 check-sat command(s) [2024-11-09 15:29:25,276 INFO L228 tOrderPrioritization]: Conjunction of SSA is sat [2024-11-09 15:29:25,276 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:25,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:25,320 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:25,321 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:25,321 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 5 times [2024-11-09 15:29:25,321 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:25,321 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [426770980] [2024-11-09 15:29:25,321 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:25,321 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:25,325 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:25,325 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:25,326 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:25,328 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:25,328 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:25,328 INFO L85 PathProgramCache]: Analyzing trace with hash 555586642, now seen corresponding path program 6 times [2024-11-09 15:29:25,329 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:25,329 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [350055408] [2024-11-09 15:29:25,329 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:25,329 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:25,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:25,654 INFO L134 CoverageAnalysis]: Checked inductivity of 189 backedges. 51 proven. 68 refuted. 0 times theorem prover too weak. 70 trivial. 0 not checked. [2024-11-09 15:29:25,654 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:25,654 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [350055408] [2024-11-09 15:29:25,654 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [350055408] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:25,654 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1742660319] [2024-11-09 15:29:25,654 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-09 15:29:25,655 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:25,655 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:25,656 INFO L229 MonitoredProcess]: Starting monitored process 94 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:25,656 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (94)] Waiting until timeout for monitored process [2024-11-09 15:29:25,758 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2024-11-09 15:29:25,758 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:25,760 INFO L255 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 18 conjuncts are in the unsatisfiable core [2024-11-09 15:29:25,761 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:26,026 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-09 15:29:26,027 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:26,217 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-09 15:29:26,217 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1742660319] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:26,218 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:26,218 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18, 18] total 35 [2024-11-09 15:29:26,218 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1625786682] [2024-11-09 15:29:26,218 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:26,258 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:26,258 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 36 interpolants. [2024-11-09 15:29:26,258 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=1024, Unknown=0, NotChecked=0, Total=1260 [2024-11-09 15:29:26,259 INFO L87 Difference]: Start difference. First operand 123 states and 138 transitions. cyclomatic complexity: 25 Second operand has 36 states, 35 states have (on average 2.914285714285714) internal successors, (102), 36 states have internal predecessors, (102), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:27,182 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:27,182 INFO L93 Difference]: Finished difference Result 738 states and 849 transitions. [2024-11-09 15:29:27,182 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 738 states and 849 transitions. [2024-11-09 15:29:27,185 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2024-11-09 15:29:27,186 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 738 states to 353 states and 399 transitions. [2024-11-09 15:29:27,186 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 186 [2024-11-09 15:29:27,186 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 249 [2024-11-09 15:29:27,186 INFO L73 IsDeterministic]: Start isDeterministic. Operand 353 states and 399 transitions. [2024-11-09 15:29:27,187 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:27,187 INFO L218 hiAutomatonCegarLoop]: Abstraction has 353 states and 399 transitions. [2024-11-09 15:29:27,187 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 353 states and 399 transitions. [2024-11-09 15:29:27,189 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 353 to 264. [2024-11-09 15:29:27,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 264 states, 264 states have (on average 1.1553030303030303) internal successors, (305), 263 states have internal predecessors, (305), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:27,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 264 states to 264 states and 305 transitions. [2024-11-09 15:29:27,190 INFO L240 hiAutomatonCegarLoop]: Abstraction has 264 states and 305 transitions. [2024-11-09 15:29:27,192 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 59 states. [2024-11-09 15:29:27,192 INFO L425 stractBuchiCegarLoop]: Abstraction has 264 states and 305 transitions. [2024-11-09 15:29:27,192 INFO L332 stractBuchiCegarLoop]: ======== Iteration 17 ============ [2024-11-09 15:29:27,192 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 264 states and 305 transitions. [2024-11-09 15:29:27,193 INFO L131 ngComponentsAnalysis]: Automaton has 3 accepting balls. 9 [2024-11-09 15:29:27,193 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:27,193 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:27,194 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [8, 8, 8, 8, 8, 8, 6, 6, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:29:27,194 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:27,194 INFO L745 eck$LassoCheckResult]: Stem: 7048#$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; 7035#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; 7024#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; 7025#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; 7044#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; 7045#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; 7046#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; 7066#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; 7065#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; 7064#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; 7063#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; 7062#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; 7061#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; 7060#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; 7059#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; 7058#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; 7057#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; 7056#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; 7055#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; 7054#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 7008#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; 7009#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7017#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7018#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7042#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7043#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7052#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7053#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7105#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7104#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7103#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7102#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7101#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7100#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7099#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7098#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7096#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7095#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7094#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7091#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7092#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; 7108#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7106#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 7107#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; 7134#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7067#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 7068#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); 7036#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; 7037#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7010#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7011#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7038#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7039#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7049#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7050#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7012#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7013#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7236#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7235#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7234#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7233#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7232#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7231#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7223#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7230#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7222#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7221#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7220#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; 7211#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7146#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 7145#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; 7143#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7144#L29-8 assume !(rangesum_~i~1#1 < ~N~0); 7047#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); 7026#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; 7027#L57-3 assume !(main_~i~2#1 < ~N~0 - 1); 7019#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; 7020#L29-13 [2024-11-09 15:29:27,195 INFO L747 eck$LassoCheckResult]: Loop: 7020#L29-13 assume !!(rangesum_~i~1#1 < ~N~0); 7021#L30-4 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 7028#L29-12 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 7020#L29-13 [2024-11-09 15:29:27,195 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:27,195 INFO L85 PathProgramCache]: Analyzing trace with hash 1076784923, now seen corresponding path program 1 times [2024-11-09 15:29:27,195 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:27,195 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1918838780] [2024-11-09 15:29:27,195 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:27,195 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:27,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:27,266 INFO L134 CoverageAnalysis]: Checked inductivity of 248 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 248 trivial. 0 not checked. [2024-11-09 15:29:27,266 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:27,266 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1918838780] [2024-11-09 15:29:27,266 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1918838780] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-09 15:29:27,266 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-09 15:29:27,266 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-11-09 15:29:27,266 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [754385736] [2024-11-09 15:29:27,266 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-09 15:29:27,267 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:27,267 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:27,267 INFO L85 PathProgramCache]: Analyzing trace with hash 120316, now seen corresponding path program 1 times [2024-11-09 15:29:27,267 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:27,267 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [953841211] [2024-11-09 15:29:27,267 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:27,267 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:27,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:27,270 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:27,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:27,272 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:27,299 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:29:27,299 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:29:27,299 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:29:27,299 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:29:27,299 INFO L128 ssoRankerPreferences]: Use exernal solver: true [2024-11-09 15:29:27,299 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:27,299 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:29:27,300 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:29:27,300 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration17_Loop [2024-11-09 15:29:27,300 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:29:27,300 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:29:27,300 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:27,306 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:27,338 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:29:27,338 INFO L365 LassoAnalysis]: Checking for nontermination... [2024-11-09 15:29:27,338 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:27,338 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:27,340 INFO L229 MonitoredProcess]: Starting monitored process 95 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:27,341 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (95)] Waiting until timeout for monitored process [2024-11-09 15:29:27,342 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 0 Nilpotent components: true [2024-11-09 15:29:27,342 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-09 15:29:27,363 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (95)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:27,364 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:27,364 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:27,365 INFO L229 MonitoredProcess]: Starting monitored process 96 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:27,366 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (96)] Waiting until timeout for monitored process [2024-11-09 15:29:27,367 INFO L148 nArgumentSynthesizer]: Nontermination analysis: NONLINEAR Allow bounded executions: true Number of generalized eigenvectors: 3 Nilpotent components: true [2024-11-09 15:29:27,367 INFO L160 nArgumentSynthesizer]: Using integer mode. [2024-11-09 15:29:27,484 INFO L405 LassoAnalysis]: Proving nontermination failed: No geometric nontermination argument exists. [2024-11-09 15:29:27,489 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (96)] Ended with exit code 0 [2024-11-09 15:29:27,489 INFO L204 LassoAnalysis]: Preferences: [2024-11-09 15:29:27,489 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2024-11-09 15:29:27,489 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2024-11-09 15:29:27,489 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2024-11-09 15:29:27,489 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2024-11-09 15:29:27,489 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:27,489 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2024-11-09 15:29:27,489 INFO L131 ssoRankerPreferences]: Path of dumped script: [2024-11-09 15:29:27,489 INFO L132 ssoRankerPreferences]: Filename of dumped script: rangesum.i_Iteration17_Loop [2024-11-09 15:29:27,489 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2024-11-09 15:29:27,489 INFO L241 LassoAnalysis]: Starting lasso preprocessing... [2024-11-09 15:29:27,490 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:27,494 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2024-11-09 15:29:27,519 INFO L259 LassoAnalysis]: Preprocessing complete. [2024-11-09 15:29:27,519 INFO L451 LassoAnalysis]: Using template 'affine'. [2024-11-09 15:29:27,519 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:27,519 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:27,520 INFO L229 MonitoredProcess]: Starting monitored process 97 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:27,521 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (97)] Waiting until timeout for monitored process [2024-11-09 15:29:27,521 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2024-11-09 15:29:27,531 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2024-11-09 15:29:27,531 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2024-11-09 15:29:27,531 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2024-11-09 15:29:27,531 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2024-11-09 15:29:27,531 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2024-11-09 15:29:27,532 INFO L401 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2024-11-09 15:29:27,532 INFO L402 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2024-11-09 15:29:27,533 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2024-11-09 15:29:27,548 INFO L443 ModelExtractionUtils]: Simplification made 4 calls to the SMT solver. [2024-11-09 15:29:27,548 INFO L444 ModelExtractionUtils]: 0 out of 4 variables were initially zero. Simplification set additionally 1 variables to zero. [2024-11-09 15:29:27,548 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-11-09 15:29:27,548 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:27,550 INFO L229 MonitoredProcess]: Starting monitored process 98 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2024-11-09 15:29:27,554 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (98)] Waiting until timeout for monitored process [2024-11-09 15:29:27,555 INFO L435 nArgumentSynthesizer]: Simplifying supporting invariants... [2024-11-09 15:29:27,555 INFO L438 nArgumentSynthesizer]: Removed 0 redundant supporting invariants from a total of 0. [2024-11-09 15:29:27,555 INFO L474 LassoAnalysis]: Proved termination. [2024-11-09 15:29:27,555 INFO L476 LassoAnalysis]: Termination argument consisting of: Ranking function f(~N~0, ULTIMATE.start_rangesum_~i~1#1) = 3*~N~0 - 4*ULTIMATE.start_rangesum_~i~1#1 Supporting invariants [] [2024-11-09 15:29:27,565 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (97)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:27,566 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2024-11-09 15:29:27,574 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:27,622 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:27,623 INFO L255 TraceCheckSpWp]: Trace formula consists of 313 conjuncts, 2 conjuncts are in the unsatisfiable core [2024-11-09 15:29:27,625 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:27,686 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:27,687 WARN L253 TraceCheckSpWp]: Trace formula consists of 6 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-11-09 15:29:27,687 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:27,720 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-09 15:29:27,720 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-09 15:29:27,721 INFO L71 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 264 states and 305 transitions. cyclomatic complexity: 51 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-09 15:29:27,745 INFO L75 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 264 states and 305 transitions. cyclomatic complexity: 51. 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 289 states and 334 transitions. Complement of second has 8 states. [2024-11-09 15:29:27,745 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-09 15:29:27,746 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-09 15:29:27,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 31 transitions. [2024-11-09 15:29:27,746 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 31 transitions. Stem has 77 letters. Loop has 3 letters. [2024-11-09 15:29:27,746 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:27,746 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 31 transitions. Stem has 80 letters. Loop has 3 letters. [2024-11-09 15:29:27,746 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:27,746 INFO L84 BuchiAccepts]: Start buchiAccepts Operand 5 states and 31 transitions. Stem has 77 letters. Loop has 6 letters. [2024-11-09 15:29:27,747 INFO L116 BuchiAccepts]: Finished buchiAccepts. [2024-11-09 15:29:27,747 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 289 states and 334 transitions. [2024-11-09 15:29:27,748 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:27,748 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 289 states to 232 states and 263 transitions. [2024-11-09 15:29:27,748 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 129 [2024-11-09 15:29:27,749 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 130 [2024-11-09 15:29:27,749 INFO L73 IsDeterministic]: Start isDeterministic. Operand 232 states and 263 transitions. [2024-11-09 15:29:27,749 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:27,749 INFO L218 hiAutomatonCegarLoop]: Abstraction has 232 states and 263 transitions. [2024-11-09 15:29:27,749 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 232 states and 263 transitions. [2024-11-09 15:29:27,753 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 232 to 220. [2024-11-09 15:29:27,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 220 states, 220 states have (on average 1.1409090909090909) internal successors, (251), 219 states have internal predecessors, (251), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:27,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 220 states to 220 states and 251 transitions. [2024-11-09 15:29:27,754 INFO L240 hiAutomatonCegarLoop]: Abstraction has 220 states and 251 transitions. [2024-11-09 15:29:27,754 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:27,754 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-11-09 15:29:27,754 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2024-11-09 15:29:27,754 INFO L87 Difference]: Start difference. First operand 220 states and 251 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-09 15:29:27,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:27,780 INFO L93 Difference]: Finished difference Result 221 states and 251 transitions. [2024-11-09 15:29:27,780 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 221 states and 251 transitions. [2024-11-09 15:29:27,781 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:27,782 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 221 states to 221 states and 251 transitions. [2024-11-09 15:29:27,782 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 118 [2024-11-09 15:29:27,782 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 118 [2024-11-09 15:29:27,782 INFO L73 IsDeterministic]: Start isDeterministic. Operand 221 states and 251 transitions. [2024-11-09 15:29:27,782 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:27,783 INFO L218 hiAutomatonCegarLoop]: Abstraction has 221 states and 251 transitions. [2024-11-09 15:29:27,783 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 221 states and 251 transitions. [2024-11-09 15:29:27,785 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 221 to 220. [2024-11-09 15:29:27,785 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-09 15:29:27,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 220 states to 220 states and 250 transitions. [2024-11-09 15:29:27,785 INFO L240 hiAutomatonCegarLoop]: Abstraction has 220 states and 250 transitions. [2024-11-09 15:29:27,786 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-11-09 15:29:27,786 INFO L425 stractBuchiCegarLoop]: Abstraction has 220 states and 250 transitions. [2024-11-09 15:29:27,786 INFO L332 stractBuchiCegarLoop]: ======== Iteration 18 ============ [2024-11-09 15:29:27,786 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 220 states and 250 transitions. [2024-11-09 15:29:27,787 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:27,787 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:27,787 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:27,788 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-09 15:29:27,788 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:27,788 INFO L745 eck$LassoCheckResult]: Stem: 8305#$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; 8295#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; 8287#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; 8288#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; 8301#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; 8302#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; 8303#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; 8334#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; 8332#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; 8330#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; 8329#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; 8327#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; 8323#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; 8321#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; 8319#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; 8317#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; 8316#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; 8313#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; 8311#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; 8310#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 8268#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; 8269#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8278#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8279#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8299#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8300#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8368#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8367#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8366#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8365#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8364#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8363#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8362#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8361#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8360#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8359#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8357#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8358#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; 8407#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8406#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8392#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; 8391#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8383#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 8384#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; 8322#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8312#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 8283#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); 8284#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; 8296#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8270#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8271#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8306#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8487#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8307#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8297#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8272#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8273#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8486#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8485#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8484#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8483#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8474#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8471#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8472#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8469#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8466#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8464#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8462#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8458#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8459#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8479#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 8456#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8454#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8452#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; 8450#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8448#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8446#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; 8443#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8415#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8413#L30-2 [2024-11-09 15:29:27,789 INFO L747 eck$LassoCheckResult]: Loop: 8413#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; 8388#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 8389#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 8413#L30-2 [2024-11-09 15:29:27,789 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:27,789 INFO L85 PathProgramCache]: Analyzing trace with hash 1872040403, now seen corresponding path program 7 times [2024-11-09 15:29:27,789 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:27,789 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1854392042] [2024-11-09 15:29:27,789 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:27,789 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:27,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:28,029 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (98)] Forceful destruction successful, exit code 0 [2024-11-09 15:29:28,422 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-09 15:29:28,423 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:28,423 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1854392042] [2024-11-09 15:29:28,423 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1854392042] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:28,424 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1248178828] [2024-11-09 15:29:28,424 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-09 15:29:28,424 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:28,424 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:28,425 INFO L229 MonitoredProcess]: Starting monitored process 99 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:28,426 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (99)] Waiting until timeout for monitored process [2024-11-09 15:29:28,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:28,516 INFO L255 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 20 conjuncts are in the unsatisfiable core [2024-11-09 15:29:28,517 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:28,927 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-09 15:29:28,927 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:29,322 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-09 15:29:29,322 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1248178828] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:29,322 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:29,322 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 21, 21] total 53 [2024-11-09 15:29:29,322 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [641694922] [2024-11-09 15:29:29,322 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:29,323 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:29,323 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:29,323 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 6 times [2024-11-09 15:29:29,323 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:29,323 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1989729143] [2024-11-09 15:29:29,323 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:29,323 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:29,327 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:29,327 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:29,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:29,330 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:29,378 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:29,378 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 53 interpolants. [2024-11-09 15:29:29,379 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=422, Invalid=2334, Unknown=0, NotChecked=0, Total=2756 [2024-11-09 15:29:29,379 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-09 15:29:30,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:30,066 INFO L93 Difference]: Finished difference Result 317 states and 340 transitions. [2024-11-09 15:29:30,066 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 317 states and 340 transitions. [2024-11-09 15:29:30,068 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:30,068 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 317 states to 197 states and 216 transitions. [2024-11-09 15:29:30,068 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 96 [2024-11-09 15:29:30,068 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 96 [2024-11-09 15:29:30,069 INFO L73 IsDeterministic]: Start isDeterministic. Operand 197 states and 216 transitions. [2024-11-09 15:29:30,069 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:30,069 INFO L218 hiAutomatonCegarLoop]: Abstraction has 197 states and 216 transitions. [2024-11-09 15:29:30,069 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states and 216 transitions. [2024-11-09 15:29:30,070 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 184. [2024-11-09 15:29:30,071 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-09 15:29:30,071 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 184 states to 184 states and 203 transitions. [2024-11-09 15:29:30,071 INFO L240 hiAutomatonCegarLoop]: Abstraction has 184 states and 203 transitions. [2024-11-09 15:29:30,071 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2024-11-09 15:29:30,072 INFO L425 stractBuchiCegarLoop]: Abstraction has 184 states and 203 transitions. [2024-11-09 15:29:30,072 INFO L332 stractBuchiCegarLoop]: ======== Iteration 19 ============ [2024-11-09 15:29:30,072 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 184 states and 203 transitions. [2024-11-09 15:29:30,072 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:30,073 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:30,073 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:30,073 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-09 15:29:30,073 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:30,073 INFO L745 eck$LassoCheckResult]: Stem: 9383#$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; 9373#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; 9366#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; 9367#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; 9379#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; 9380#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; 9381#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; 9410#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; 9409#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; 9408#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; 9407#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; 9406#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; 9405#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; 9404#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; 9403#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; 9402#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; 9401#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; 9400#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; 9399#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; 9398#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; 9390#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; 9389#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 9347#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; 9348#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9456#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9457#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9378#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9357#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9358#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9388#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9455#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9454#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9453#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9452#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9451#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9450#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9449#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9448#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9446#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9447#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; 9529#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9527#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9523#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; 9477#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9475#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 9473#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; 9392#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9391#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 9362#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); 9363#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; 9374#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9349#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9350#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9384#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9351#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9352#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9385#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9514#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9511#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9508#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9506#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9504#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9501#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9498#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9493#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9494#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9502#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9499#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9500#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9522#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9521#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9375#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9376#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 9520#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9518#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9516#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; 9513#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9510#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9507#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; 9505#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9503#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9464#L30-2 [2024-11-09 15:29:30,074 INFO L747 eck$LassoCheckResult]: Loop: 9464#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; 9497#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 9463#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 9464#L30-2 [2024-11-09 15:29:30,074 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:30,074 INFO L85 PathProgramCache]: Analyzing trace with hash -1155153931, now seen corresponding path program 8 times [2024-11-09 15:29:30,074 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:30,074 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1167299810] [2024-11-09 15:29:30,074 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:30,074 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:30,091 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:30,425 INFO L134 CoverageAnalysis]: Checked inductivity of 318 backedges. 49 proven. 124 refuted. 0 times theorem prover too weak. 145 trivial. 0 not checked. [2024-11-09 15:29:30,425 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:30,425 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1167299810] [2024-11-09 15:29:30,426 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1167299810] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:30,426 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1995141546] [2024-11-09 15:29:30,426 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-09 15:29:30,426 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:30,426 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:30,427 INFO L229 MonitoredProcess]: Starting monitored process 100 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:30,429 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (100)] Waiting until timeout for monitored process [2024-11-09 15:29:30,532 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-09 15:29:30,535 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:30,537 INFO L255 TraceCheckSpWp]: Trace formula consists of 304 conjuncts, 20 conjuncts are in the unsatisfiable core [2024-11-09 15:29:30,538 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:30,735 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-09 15:29:30,735 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:30,916 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-09 15:29:30,916 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1995141546] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:30,916 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:30,916 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 21, 21] total 32 [2024-11-09 15:29:30,916 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1846797469] [2024-11-09 15:29:30,916 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:30,916 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:30,916 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:30,917 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 7 times [2024-11-09 15:29:30,917 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:30,917 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1254255562] [2024-11-09 15:29:30,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:30,917 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:30,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:30,920 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:30,921 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:30,922 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:30,970 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:30,971 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2024-11-09 15:29:30,971 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=243, Invalid=749, Unknown=0, NotChecked=0, Total=992 [2024-11-09 15:29:30,971 INFO L87 Difference]: Start difference. First operand 184 states and 203 transitions. cyclomatic complexity: 27 Second operand has 32 states, 32 states have (on average 2.71875) internal successors, (87), 32 states have internal predecessors, (87), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:31,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:31,354 INFO L93 Difference]: Finished difference Result 249 states and 272 transitions. [2024-11-09 15:29:31,354 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 249 states and 272 transitions. [2024-11-09 15:29:31,355 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:31,356 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 249 states to 244 states and 265 transitions. [2024-11-09 15:29:31,356 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 127 [2024-11-09 15:29:31,356 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 127 [2024-11-09 15:29:31,356 INFO L73 IsDeterministic]: Start isDeterministic. Operand 244 states and 265 transitions. [2024-11-09 15:29:31,356 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:31,356 INFO L218 hiAutomatonCegarLoop]: Abstraction has 244 states and 265 transitions. [2024-11-09 15:29:31,357 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 244 states and 265 transitions. [2024-11-09 15:29:31,358 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 244 to 202. [2024-11-09 15:29:31,358 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-09 15:29:31,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 202 states to 202 states and 219 transitions. [2024-11-09 15:29:31,359 INFO L240 hiAutomatonCegarLoop]: Abstraction has 202 states and 219 transitions. [2024-11-09 15:29:31,360 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 37 states. [2024-11-09 15:29:31,361 INFO L425 stractBuchiCegarLoop]: Abstraction has 202 states and 219 transitions. [2024-11-09 15:29:31,361 INFO L332 stractBuchiCegarLoop]: ======== Iteration 20 ============ [2024-11-09 15:29:31,361 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 202 states and 219 transitions. [2024-11-09 15:29:31,361 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:31,361 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:31,361 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:31,362 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-09 15:29:31,362 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:31,362 INFO L745 eck$LassoCheckResult]: Stem: 10365#$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; 10353#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; 10346#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; 10347#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; 10361#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; 10362#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; 10363#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; 10386#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; 10385#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; 10384#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; 10383#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; 10382#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; 10381#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; 10380#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; 10379#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; 10378#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; 10377#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; 10376#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; 10375#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; 10374#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; 10370#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; 10369#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 10327#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; 10328#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10337#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10338#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10359#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10360#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10420#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10419#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10418#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10417#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10416#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10415#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10414#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10413#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10412#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10411#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10409#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10410#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; 10523#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10521#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10519#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; 10517#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10515#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10514#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; 10513#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10421#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 10387#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; 10372#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10371#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 10342#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); 10343#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; 10354#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10329#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10330#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10366#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10506#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10504#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10502#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10500#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10498#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10496#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10494#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10492#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10491#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10490#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10488#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10486#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10484#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10481#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10482#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10487#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10485#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10357#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10331#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 10332#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10355#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10356#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; 10478#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10475#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10472#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; 10469#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10466#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10463#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; 10460#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10457#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10446#L30-2 [2024-11-09 15:29:31,362 INFO L747 eck$LassoCheckResult]: Loop: 10446#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; 10422#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 10423#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 10446#L30-2 [2024-11-09 15:29:31,363 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:31,363 INFO L85 PathProgramCache]: Analyzing trace with hash 400932536, now seen corresponding path program 9 times [2024-11-09 15:29:31,363 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:31,363 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2141453655] [2024-11-09 15:29:31,363 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:31,363 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:31,383 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:31,840 INFO L134 CoverageAnalysis]: Checked inductivity of 374 backedges. 141 proven. 122 refuted. 0 times theorem prover too weak. 111 trivial. 0 not checked. [2024-11-09 15:29:31,841 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:31,841 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2141453655] [2024-11-09 15:29:31,841 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2141453655] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:31,841 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2096352424] [2024-11-09 15:29:31,841 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-09 15:29:31,841 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:31,841 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:31,842 INFO L229 MonitoredProcess]: Starting monitored process 101 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:31,843 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (101)] Waiting until timeout for monitored process [2024-11-09 15:29:32,056 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 12 check-sat command(s) [2024-11-09 15:29:32,056 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:32,059 INFO L255 TraceCheckSpWp]: Trace formula consists of 328 conjuncts, 24 conjuncts are in the unsatisfiable core [2024-11-09 15:29:32,061 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:32,471 INFO L134 CoverageAnalysis]: Checked inductivity of 374 backedges. 176 proven. 117 refuted. 0 times theorem prover too weak. 81 trivial. 0 not checked. [2024-11-09 15:29:32,471 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:32,866 INFO L134 CoverageAnalysis]: Checked inductivity of 374 backedges. 176 proven. 117 refuted. 0 times theorem prover too weak. 81 trivial. 0 not checked. [2024-11-09 15:29:32,866 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2096352424] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:32,866 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:32,866 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 24, 24] total 57 [2024-11-09 15:29:32,866 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [780822144] [2024-11-09 15:29:32,866 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:32,867 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:32,867 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:32,867 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 8 times [2024-11-09 15:29:32,867 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:32,867 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [591254039] [2024-11-09 15:29:32,867 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:32,867 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:32,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:32,870 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:32,871 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:32,873 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:32,933 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:32,933 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 57 interpolants. [2024-11-09 15:29:32,934 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=636, Invalid=2556, Unknown=0, NotChecked=0, Total=3192 [2024-11-09 15:29:32,934 INFO L87 Difference]: Start difference. First operand 202 states and 219 transitions. cyclomatic complexity: 25 Second operand has 57 states, 57 states have (on average 3.0) internal successors, (171), 57 states have internal predecessors, (171), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:36,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:36,046 INFO L93 Difference]: Finished difference Result 653 states and 699 transitions. [2024-11-09 15:29:36,046 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 653 states and 699 transitions. [2024-11-09 15:29:36,049 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:36,050 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 653 states to 349 states and 382 transitions. [2024-11-09 15:29:36,050 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 158 [2024-11-09 15:29:36,050 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 208 [2024-11-09 15:29:36,050 INFO L73 IsDeterministic]: Start isDeterministic. Operand 349 states and 382 transitions. [2024-11-09 15:29:36,050 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:36,050 INFO L218 hiAutomatonCegarLoop]: Abstraction has 349 states and 382 transitions. [2024-11-09 15:29:36,050 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 349 states and 382 transitions. [2024-11-09 15:29:36,052 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 349 to 302. [2024-11-09 15:29:36,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 302 states, 302 states have (on average 1.096026490066225) internal successors, (331), 301 states have internal predecessors, (331), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:36,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 302 states to 302 states and 331 transitions. [2024-11-09 15:29:36,054 INFO L240 hiAutomatonCegarLoop]: Abstraction has 302 states and 331 transitions. [2024-11-09 15:29:36,056 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 103 states. [2024-11-09 15:29:36,057 INFO L425 stractBuchiCegarLoop]: Abstraction has 302 states and 331 transitions. [2024-11-09 15:29:36,057 INFO L332 stractBuchiCegarLoop]: ======== Iteration 21 ============ [2024-11-09 15:29:36,057 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 302 states and 331 transitions. [2024-11-09 15:29:36,058 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:36,058 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:36,058 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:36,059 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [16, 15, 12, 12, 12, 9, 9, 8, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:29:36,059 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:36,059 INFO L745 eck$LassoCheckResult]: Stem: 11978#$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; 11967#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; 11957#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; 11958#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; 11975#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; 11976#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; 12001#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; 12000#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; 11999#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; 11998#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; 11997#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; 11996#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; 11995#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; 11994#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; 11993#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; 11992#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; 11991#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; 11990#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; 11989#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; 11986#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; 11985#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 11940#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; 11941#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12084#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12083#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11973#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 11950#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11951#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11984#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12080#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12079#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12078#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12077#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12076#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12075#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12074#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12073#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12072#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12071#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12070#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12069#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12068#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12067#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12066#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12065#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12064#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12062#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12063#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; 12122#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12121#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12120#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; 12119#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12117#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12115#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; 12113#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12112#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 12109#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; 12033#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11987#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 11955#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); 11956#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; 11968#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12180#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12179#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12178#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12177#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12176#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12175#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12174#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12173#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12172#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12171#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12170#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12169#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12168#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12167#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12166#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12165#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12164#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12163#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12162#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12160#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12161#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12208#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12205#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12206#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12240#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11980#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11982#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12235#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12234#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12233#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12231#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 12229#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 11970#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 11944#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 11945#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12220#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12218#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; 12216#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12214#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12212#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; 12211#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12210#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12209#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; 12207#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12204#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12135#L30-2 [2024-11-09 15:29:36,059 INFO L747 eck$LassoCheckResult]: Loop: 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);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; 12201#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 12134#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 12135#L30-2 [2024-11-09 15:29:36,059 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:36,060 INFO L85 PathProgramCache]: Analyzing trace with hash -1911065283, now seen corresponding path program 10 times [2024-11-09 15:29:36,060 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:36,060 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [598750331] [2024-11-09 15:29:36,060 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:36,060 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:36,080 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:37,155 INFO L134 CoverageAnalysis]: Checked inductivity of 621 backedges. 367 proven. 239 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2024-11-09 15:29:37,156 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:37,156 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [598750331] [2024-11-09 15:29:37,156 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [598750331] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:37,156 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [126452155] [2024-11-09 15:29:37,156 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-09 15:29:37,156 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:37,156 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:37,157 INFO L229 MonitoredProcess]: Starting monitored process 102 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:37,158 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (102)] Waiting until timeout for monitored process [2024-11-09 15:29:37,254 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-09 15:29:37,255 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:37,256 INFO L255 TraceCheckSpWp]: Trace formula consists of 313 conjuncts, 28 conjuncts are in the unsatisfiable core [2024-11-09 15:29:37,258 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:37,925 INFO L134 CoverageAnalysis]: Checked inductivity of 621 backedges. 321 proven. 210 refuted. 0 times theorem prover too weak. 90 trivial. 0 not checked. [2024-11-09 15:29:37,926 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:38,577 INFO L134 CoverageAnalysis]: Checked inductivity of 621 backedges. 321 proven. 210 refuted. 0 times theorem prover too weak. 90 trivial. 0 not checked. [2024-11-09 15:29:38,578 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [126452155] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:38,578 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:38,578 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [40, 29, 29] total 80 [2024-11-09 15:29:38,578 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1993842727] [2024-11-09 15:29:38,578 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:38,578 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:38,578 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:38,578 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 9 times [2024-11-09 15:29:38,578 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:38,578 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1739617210] [2024-11-09 15:29:38,578 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:38,579 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:38,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:38,582 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:38,583 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:38,584 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:38,630 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:38,630 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 80 interpolants. [2024-11-09 15:29:38,631 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=802, Invalid=5518, Unknown=0, NotChecked=0, Total=6320 [2024-11-09 15:29:38,632 INFO L87 Difference]: Start difference. First operand 302 states and 331 transitions. cyclomatic complexity: 37 Second operand has 80 states, 80 states have (on average 2.7375) internal successors, (219), 80 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-09 15:29:42,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:42,425 INFO L93 Difference]: Finished difference Result 743 states and 826 transitions. [2024-11-09 15:29:42,425 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 743 states and 826 transitions. [2024-11-09 15:29:42,428 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:42,429 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 743 states to 616 states and 695 transitions. [2024-11-09 15:29:42,429 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 414 [2024-11-09 15:29:42,430 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 444 [2024-11-09 15:29:42,430 INFO L73 IsDeterministic]: Start isDeterministic. Operand 616 states and 695 transitions. [2024-11-09 15:29:42,430 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:42,430 INFO L218 hiAutomatonCegarLoop]: Abstraction has 616 states and 695 transitions. [2024-11-09 15:29:42,430 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 616 states and 695 transitions. [2024-11-09 15:29:42,434 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 616 to 348. [2024-11-09 15:29:42,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 348 states, 348 states have (on average 1.0948275862068966) internal successors, (381), 347 states have internal predecessors, (381), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:42,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 348 states to 348 states and 381 transitions. [2024-11-09 15:29:42,436 INFO L240 hiAutomatonCegarLoop]: Abstraction has 348 states and 381 transitions. [2024-11-09 15:29:42,440 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 112 states. [2024-11-09 15:29:42,441 INFO L425 stractBuchiCegarLoop]: Abstraction has 348 states and 381 transitions. [2024-11-09 15:29:42,441 INFO L332 stractBuchiCegarLoop]: ======== Iteration 22 ============ [2024-11-09 15:29:42,441 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 348 states and 381 transitions. [2024-11-09 15:29:42,442 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:42,442 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:42,442 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:42,442 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [17, 16, 13, 13, 13, 10, 10, 9, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:29:42,442 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:42,443 INFO L745 eck$LassoCheckResult]: Stem: 13897#$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; 13885#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; 13877#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; 13878#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; 13893#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; 13894#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; 13895#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; 13921#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; 13920#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; 13919#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; 13918#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; 13917#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; 13916#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; 13915#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; 13914#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; 13913#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; 13912#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; 13911#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; 13910#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; 13909#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; 13908#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; 13907#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; 13904#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; 13903#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 13858#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; 13859#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13959#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13960#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14005#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14004#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14003#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14002#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14001#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14000#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13999#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13998#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13997#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13996#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13995#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13994#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13993#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13992#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13991#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13990#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13989#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13988#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13986#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13985#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13984#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13982#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13981#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13980#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13978#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 13979#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; 14102#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14101#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14100#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; 14099#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14098#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14097#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; 14095#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14094#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 14093#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; 14048#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13905#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 13873#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); 13874#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; 13886#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13958#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13956#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13957#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14012#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14013#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14014#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14010#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14011#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14022#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14021#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14020#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14019#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14018#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14017#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14016#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14015#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13899#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13900#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14046#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14044#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14045#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14047#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14038#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14039#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14163#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14161#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14162#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14179#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14177#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14178#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14203#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14200#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14201#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14205#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 14006#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13888#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13862#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 13863#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14204#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14202#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; 14199#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14197#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14195#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; 14029#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 14030#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 14191#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; 14189#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13887#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13860#L30-2 [2024-11-09 15:29:42,443 INFO L747 eck$LassoCheckResult]: Loop: 13860#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; 13861#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 13898#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 13860#L30-2 [2024-11-09 15:29:42,444 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:42,444 INFO L85 PathProgramCache]: Analyzing trace with hash 1860062004, now seen corresponding path program 11 times [2024-11-09 15:29:42,444 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:42,444 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [79895787] [2024-11-09 15:29:42,444 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:42,444 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:42,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:43,548 INFO L134 CoverageAnalysis]: Checked inductivity of 723 backedges. 502 proven. 206 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2024-11-09 15:29:43,548 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:43,548 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [79895787] [2024-11-09 15:29:43,548 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [79895787] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:43,548 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [692182176] [2024-11-09 15:29:43,548 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-09 15:29:43,548 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:43,548 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:43,553 INFO L229 MonitoredProcess]: Starting monitored process 103 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:43,554 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (103)] Waiting until timeout for monitored process [2024-11-09 15:29:43,682 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 17 check-sat command(s) [2024-11-09 15:29:43,683 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:43,684 INFO L255 TraceCheckSpWp]: Trace formula consists of 375 conjuncts, 30 conjuncts are in the unsatisfiable core [2024-11-09 15:29:43,686 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:44,450 INFO L134 CoverageAnalysis]: Checked inductivity of 723 backedges. 367 proven. 247 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2024-11-09 15:29:44,450 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:45,220 INFO L134 CoverageAnalysis]: Checked inductivity of 723 backedges. 367 proven. 247 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2024-11-09 15:29:45,220 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [692182176] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:45,220 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:45,220 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [42, 31, 31] total 85 [2024-11-09 15:29:45,220 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1275730277] [2024-11-09 15:29:45,220 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:45,221 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:45,221 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:45,221 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 10 times [2024-11-09 15:29:45,221 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:45,221 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1932552632] [2024-11-09 15:29:45,221 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:45,221 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:45,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:45,224 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:45,225 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:45,226 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:45,267 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:45,267 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 85 interpolants. [2024-11-09 15:29:45,268 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=956, Invalid=6184, Unknown=0, NotChecked=0, Total=7140 [2024-11-09 15:29:45,269 INFO L87 Difference]: Start difference. First operand 348 states and 381 transitions. cyclomatic complexity: 41 Second operand has 85 states, 85 states have (on average 2.776470588235294) internal successors, (236), 85 states have internal predecessors, (236), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:49,602 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:49,602 INFO L93 Difference]: Finished difference Result 834 states and 930 transitions. [2024-11-09 15:29:49,602 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 834 states and 930 transitions. [2024-11-09 15:29:49,605 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:49,607 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 834 states to 664 states and 754 transitions. [2024-11-09 15:29:49,607 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 448 [2024-11-09 15:29:49,607 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 481 [2024-11-09 15:29:49,607 INFO L73 IsDeterministic]: Start isDeterministic. Operand 664 states and 754 transitions. [2024-11-09 15:29:49,607 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:49,607 INFO L218 hiAutomatonCegarLoop]: Abstraction has 664 states and 754 transitions. [2024-11-09 15:29:49,607 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 664 states and 754 transitions. [2024-11-09 15:29:49,611 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 664 to 365. [2024-11-09 15:29:49,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 365 states, 365 states have (on average 1.095890410958904) internal successors, (400), 364 states have internal predecessors, (400), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:49,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 365 states to 365 states and 400 transitions. [2024-11-09 15:29:49,612 INFO L240 hiAutomatonCegarLoop]: Abstraction has 365 states and 400 transitions. [2024-11-09 15:29:49,613 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 130 states. [2024-11-09 15:29:49,614 INFO L425 stractBuchiCegarLoop]: Abstraction has 365 states and 400 transitions. [2024-11-09 15:29:49,614 INFO L332 stractBuchiCegarLoop]: ======== Iteration 23 ============ [2024-11-09 15:29:49,614 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 365 states and 400 transitions. [2024-11-09 15:29:49,615 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:49,615 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:49,615 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:49,616 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [18, 17, 14, 14, 14, 11, 11, 9, 5, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:29:49,616 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:49,616 INFO L745 eck$LassoCheckResult]: Stem: 16037#$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; 16025#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; 16017#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; 16018#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; 16033#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; 16034#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; 16035#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; 16063#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; 16062#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; 16061#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; 16060#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; 16059#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; 16058#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; 16057#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; 16056#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; 16055#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; 16054#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; 16053#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; 16052#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; 16051#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; 16050#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; 16049#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; 16048#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; 16047#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; 16044#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; 16043#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 15998#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; 15999#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16104#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16105#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16153#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16152#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16151#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16150#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16149#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16148#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16147#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16146#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16145#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16144#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16143#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16142#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16141#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16140#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16139#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16138#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16137#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16136#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16135#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16134#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16133#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16131#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16130#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16129#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16127#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16128#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; 16233#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); 16206#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; 16245#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16244#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16243#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; 16242#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16241#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16240#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; 16238#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16237#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 16236#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; 16199#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16045#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 16013#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); 16014#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; 16026#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16103#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16101#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16102#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; 16162#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; 16173#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16172#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16171#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16170#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16169#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16168#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16167#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16166#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16165#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16164#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16163#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16039#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16040#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16197#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16195#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16196#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16198#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16189#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16190#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16320#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16318#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16319#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16336#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16334#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16335#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)); 16357#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16358#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16362#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16156#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16028#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16002#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 16003#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16361#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16359#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; 16356#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16354#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16352#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; 16180#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16181#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);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; 16346#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16027#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16000#L30-2 [2024-11-09 15:29:49,616 INFO L747 eck$LassoCheckResult]: Loop: 16000#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; 16001#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 16038#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 16000#L30-2 [2024-11-09 15:29:49,616 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:49,616 INFO L85 PathProgramCache]: Analyzing trace with hash -1945568105, now seen corresponding path program 12 times [2024-11-09 15:29:49,617 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:49,617 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1090597866] [2024-11-09 15:29:49,617 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:49,617 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:49,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:50,896 INFO L134 CoverageAnalysis]: Checked inductivity of 833 backedges. 449 proven. 329 refuted. 0 times theorem prover too weak. 55 trivial. 0 not checked. [2024-11-09 15:29:50,896 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:50,896 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1090597866] [2024-11-09 15:29:50,896 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1090597866] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:50,896 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1076507] [2024-11-09 15:29:50,896 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-09 15:29:50,896 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:50,896 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:50,898 INFO L229 MonitoredProcess]: Starting monitored process 104 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:50,898 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (104)] Waiting until timeout for monitored process [2024-11-09 15:29:51,154 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 18 check-sat command(s) [2024-11-09 15:29:51,154 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:29:51,157 INFO L255 TraceCheckSpWp]: Trace formula consists of 402 conjuncts, 32 conjuncts are in the unsatisfiable core [2024-11-09 15:29:51,159 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:29:52,066 INFO L134 CoverageAnalysis]: Checked inductivity of 833 backedges. 425 proven. 121 refuted. 0 times theorem prover too weak. 287 trivial. 0 not checked. [2024-11-09 15:29:52,066 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:29:53,019 INFO L134 CoverageAnalysis]: Checked inductivity of 833 backedges. 425 proven. 121 refuted. 0 times theorem prover too weak. 287 trivial. 0 not checked. [2024-11-09 15:29:53,019 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1076507] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:29:53,019 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:29:53,019 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [41, 32, 32] total 97 [2024-11-09 15:29:53,019 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [375593271] [2024-11-09 15:29:53,019 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:29:53,020 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:29:53,020 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:53,020 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 11 times [2024-11-09 15:29:53,020 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:53,020 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [518026501] [2024-11-09 15:29:53,020 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:53,020 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:53,023 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:53,023 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:29:53,024 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:29:53,026 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:29:53,083 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:29:53,084 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 97 interpolants. [2024-11-09 15:29:53,086 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1532, Invalid=7780, Unknown=0, NotChecked=0, Total=9312 [2024-11-09 15:29:53,086 INFO L87 Difference]: Start difference. First operand 365 states and 400 transitions. cyclomatic complexity: 43 Second operand has 97 states, 97 states have (on average 2.6907216494845363) internal successors, (261), 97 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-09 15:29:57,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:29:57,591 INFO L93 Difference]: Finished difference Result 1140 states and 1261 transitions. [2024-11-09 15:29:57,591 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1140 states and 1261 transitions. [2024-11-09 15:29:57,594 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:57,596 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1140 states to 596 states and 682 transitions. [2024-11-09 15:29:57,596 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 406 [2024-11-09 15:29:57,596 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 406 [2024-11-09 15:29:57,596 INFO L73 IsDeterministic]: Start isDeterministic. Operand 596 states and 682 transitions. [2024-11-09 15:29:57,596 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:29:57,597 INFO L218 hiAutomatonCegarLoop]: Abstraction has 596 states and 682 transitions. [2024-11-09 15:29:57,597 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 596 states and 682 transitions. [2024-11-09 15:29:57,600 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 596 to 379. [2024-11-09 15:29:57,600 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 379 states, 379 states have (on average 1.0923482849604222) internal successors, (414), 378 states have internal predecessors, (414), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:29:57,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 379 states to 379 states and 414 transitions. [2024-11-09 15:29:57,601 INFO L240 hiAutomatonCegarLoop]: Abstraction has 379 states and 414 transitions. [2024-11-09 15:29:57,602 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 113 states. [2024-11-09 15:29:57,603 INFO L425 stractBuchiCegarLoop]: Abstraction has 379 states and 414 transitions. [2024-11-09 15:29:57,603 INFO L332 stractBuchiCegarLoop]: ======== Iteration 24 ============ [2024-11-09 15:29:57,603 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 379 states and 414 transitions. [2024-11-09 15:29:57,604 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:29:57,604 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:29:57,604 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:29:57,604 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [18, 18, 18, 17, 14, 14, 14, 10, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:29:57,605 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:29:57,605 INFO L745 eck$LassoCheckResult]: Stem: 18537#$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; 18526#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; 18518#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; 18519#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; 18533#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; 18534#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; 18535#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; 18579#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; 18578#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; 18577#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; 18576#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; 18575#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; 18574#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; 18573#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; 18572#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; 18571#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; 18570#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; 18569#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; 18568#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; 18567#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; 18566#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; 18565#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; 18564#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; 18563#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; 18562#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; 18561#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; 18560#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; 18559#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; 18558#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; 18557#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; 18556#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; 18555#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; 18554#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; 18553#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; 18552#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; 18551#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; 18550#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; 18549#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; 18546#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; 18545#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 18499#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; 18500#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18635#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18634#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18532#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18507#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18508#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18544#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18633#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18632#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18631#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18630#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18629#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18628#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18627#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18626#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18625#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18624#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18623#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18622#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18621#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18620#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18619#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18618#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18617#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18615#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18614#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18613#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18611#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18610#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18609#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18607#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18608#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; 18772#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18771#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18770#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; 18769#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18768#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18767#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; 18765#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18764#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 18763#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; 18580#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18547#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 18514#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); 18515#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; 18527#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18674#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18672#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18673#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18697#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18698#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18699#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18695#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18696#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18710#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18709#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18708#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18707#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18706#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18705#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18704#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18703#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18702#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18701#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18700#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18541#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18542#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18735#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18732#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18733#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18734#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18728#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18729#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18835#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18833#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18834#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18851#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18849#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18850#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18874#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18872#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18529#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18503#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18504#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18693#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18877#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 18876#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18875#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18873#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; 18871#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18869#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18867#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; 18717#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18718#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18863#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; 18861#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18528#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18501#L30-2 [2024-11-09 15:29:57,605 INFO L747 eck$LassoCheckResult]: Loop: 18501#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; 18502#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 18540#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 18501#L30-2 [2024-11-09 15:29:57,605 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:29:57,605 INFO L85 PathProgramCache]: Analyzing trace with hash 879091179, now seen corresponding path program 13 times [2024-11-09 15:29:57,606 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:29:57,606 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [753890615] [2024-11-09 15:29:57,606 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:29:57,606 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:29:57,636 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:59,331 INFO L134 CoverageAnalysis]: Checked inductivity of 1036 backedges. 721 proven. 293 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2024-11-09 15:29:59,331 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:29:59,331 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [753890615] [2024-11-09 15:29:59,331 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [753890615] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:29:59,331 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [277753327] [2024-11-09 15:29:59,332 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-11-09 15:29:59,332 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:29:59,332 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:29:59,333 INFO L229 MonitoredProcess]: Starting monitored process 105 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:29:59,334 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (105)] Waiting until timeout for monitored process [2024-11-09 15:29:59,455 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:29:59,457 INFO L255 TraceCheckSpWp]: Trace formula consists of 471 conjuncts, 35 conjuncts are in the unsatisfiable core [2024-11-09 15:29:59,459 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:30:00,338 INFO L134 CoverageAnalysis]: Checked inductivity of 1036 backedges. 289 proven. 322 refuted. 0 times theorem prover too weak. 425 trivial. 0 not checked. [2024-11-09 15:30:00,339 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:30:01,176 INFO L134 CoverageAnalysis]: Checked inductivity of 1036 backedges. 289 proven. 322 refuted. 0 times theorem prover too weak. 425 trivial. 0 not checked. [2024-11-09 15:30:01,176 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [277753327] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:30:01,176 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:30:01,176 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [52, 36, 36] total 104 [2024-11-09 15:30:01,176 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1208616460] [2024-11-09 15:30:01,176 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:30:01,177 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:30:01,177 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:01,177 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 12 times [2024-11-09 15:30:01,177 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:01,177 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1441110491] [2024-11-09 15:30:01,177 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:01,177 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:01,181 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:01,181 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:30:01,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:01,184 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:30:01,231 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:30:01,232 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 104 interpolants. [2024-11-09 15:30:01,234 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1468, Invalid=9244, Unknown=0, NotChecked=0, Total=10712 [2024-11-09 15:30:01,234 INFO L87 Difference]: Start difference. First operand 379 states and 414 transitions. cyclomatic complexity: 43 Second operand has 104 states, 104 states have (on average 2.5384615384615383) internal successors, (264), 104 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-09 15:30:03,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:30:03,326 INFO L93 Difference]: Finished difference Result 493 states and 535 transitions. [2024-11-09 15:30:03,326 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 493 states and 535 transitions. [2024-11-09 15:30:03,328 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:03,329 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 493 states to 475 states and 502 transitions. [2024-11-09 15:30:03,329 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 274 [2024-11-09 15:30:03,329 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 274 [2024-11-09 15:30:03,329 INFO L73 IsDeterministic]: Start isDeterministic. Operand 475 states and 502 transitions. [2024-11-09 15:30:03,331 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:30:03,331 INFO L218 hiAutomatonCegarLoop]: Abstraction has 475 states and 502 transitions. [2024-11-09 15:30:03,331 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 475 states and 502 transitions. [2024-11-09 15:30:03,334 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 475 to 423. [2024-11-09 15:30:03,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 423 states, 423 states have (on average 1.0543735224586288) internal successors, (446), 422 states have internal predecessors, (446), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:30:03,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 423 states to 423 states and 446 transitions. [2024-11-09 15:30:03,336 INFO L240 hiAutomatonCegarLoop]: Abstraction has 423 states and 446 transitions. [2024-11-09 15:30:03,336 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 63 states. [2024-11-09 15:30:03,336 INFO L425 stractBuchiCegarLoop]: Abstraction has 423 states and 446 transitions. [2024-11-09 15:30:03,336 INFO L332 stractBuchiCegarLoop]: ======== Iteration 25 ============ [2024-11-09 15:30:03,336 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 423 states and 446 transitions. [2024-11-09 15:30:03,337 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:03,337 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:30:03,338 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:30:03,338 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [22, 21, 18, 18, 18, 18, 14, 10, 8, 7, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:30:03,338 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:30:03,339 INFO L745 eck$LassoCheckResult]: Stem: 20427#$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; 20414#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; 20405#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; 20406#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; 20424#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; 20425#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; 20422#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; 20423#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; 20469#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; 20468#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; 20467#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; 20466#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; 20465#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; 20464#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; 20463#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; 20462#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; 20461#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; 20460#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; 20459#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; 20458#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; 20457#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; 20456#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; 20455#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; 20454#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; 20453#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; 20452#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; 20451#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; 20450#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; 20449#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; 20448#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; 20447#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; 20445#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; 20441#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; 20439#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; 20437#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; 20435#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; 20434#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; 20433#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; 20432#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; 20431#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 20388#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; 20389#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20396#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20397#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20420#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20421#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20529#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20528#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20527#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20526#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20525#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20524#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20523#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20522#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20521#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20520#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20519#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20518#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20517#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20516#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20515#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20514#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20513#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20512#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20511#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20510#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20509#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20508#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20507#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20506#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20505#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20503#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20504#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; 20719#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20718#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20717#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; 20716#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20715#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20714#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; 20713#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20712#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20711#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; 20710#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20709#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20708#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; 20707#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20706#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20705#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; 20704#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20703#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20701#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; 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; 20698#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 20697#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; 20440#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20438#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 20400#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); 20401#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; 20415#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20661#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20659#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20657#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20655#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20653#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20650#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20648#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20646#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20644#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20642#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20640#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20638#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20636#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20634#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20632#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20630#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20628#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20626#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20624#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20622#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20620#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20618#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20616#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20614#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20610#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20609#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20608#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20606#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20603#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20601#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20599#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20596#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20597#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20607#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20604#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20605#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20690#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20689#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20417#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20392#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 20393#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20429#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20691#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; 20649#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20647#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20645#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; 20643#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20641#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20639#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; 20637#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20635#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20633#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; 20631#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20629#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20627#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; 20625#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20623#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20621#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; 20619#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20617#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20615#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; 20543#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20537#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20536#L30-2 [2024-11-09 15:30:03,339 INFO L747 eck$LassoCheckResult]: Loop: 20536#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; 20540#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 20535#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 20536#L30-2 [2024-11-09 15:30:03,339 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:03,339 INFO L85 PathProgramCache]: Analyzing trace with hash -1927334101, now seen corresponding path program 14 times [2024-11-09 15:30:03,339 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:03,339 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [28323032] [2024-11-09 15:30:03,339 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:03,339 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:03,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:30:04,461 INFO L134 CoverageAnalysis]: Checked inductivity of 1452 backedges. 536 proven. 397 refuted. 0 times theorem prover too weak. 519 trivial. 0 not checked. [2024-11-09 15:30:04,461 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:30:04,461 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [28323032] [2024-11-09 15:30:04,461 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [28323032] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:30:04,461 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [266204297] [2024-11-09 15:30:04,461 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-11-09 15:30:04,462 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:30:04,462 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:30:04,463 INFO L229 MonitoredProcess]: Starting monitored process 106 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:30:04,464 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (106)] Waiting until timeout for monitored process [2024-11-09 15:30:04,601 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-11-09 15:30:04,601 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:30:04,604 INFO L255 TraceCheckSpWp]: Trace formula consists of 567 conjuncts, 40 conjuncts are in the unsatisfiable core [2024-11-09 15:30:04,606 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:30:05,747 INFO L134 CoverageAnalysis]: Checked inductivity of 1452 backedges. 642 proven. 324 refuted. 0 times theorem prover too weak. 486 trivial. 0 not checked. [2024-11-09 15:30:05,748 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:30:06,861 INFO L134 CoverageAnalysis]: Checked inductivity of 1452 backedges. 642 proven. 324 refuted. 0 times theorem prover too weak. 486 trivial. 0 not checked. [2024-11-09 15:30:06,862 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [266204297] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:30:06,862 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:30:06,862 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [38, 41, 41] total 96 [2024-11-09 15:30:06,862 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1280466918] [2024-11-09 15:30:06,862 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:30:06,862 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:30:06,862 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:06,862 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 13 times [2024-11-09 15:30:06,862 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:06,862 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [296183547] [2024-11-09 15:30:06,863 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:06,863 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:06,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:06,866 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:30:06,866 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:06,868 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:30:06,916 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:30:06,917 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 96 interpolants. [2024-11-09 15:30:06,918 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1510, Invalid=7610, Unknown=0, NotChecked=0, Total=9120 [2024-11-09 15:30:06,918 INFO L87 Difference]: Start difference. First operand 423 states and 446 transitions. cyclomatic complexity: 31 Second operand has 96 states, 96 states have (on average 2.6145833333333335) internal successors, (251), 96 states have internal predecessors, (251), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:30:08,146 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:30:08,146 INFO L93 Difference]: Finished difference Result 590 states and 614 transitions. [2024-11-09 15:30:08,146 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 590 states and 614 transitions. [2024-11-09 15:30:08,147 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:08,148 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 590 states to 434 states and 457 transitions. [2024-11-09 15:30:08,148 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 249 [2024-11-09 15:30:08,149 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 249 [2024-11-09 15:30:08,149 INFO L73 IsDeterministic]: Start isDeterministic. Operand 434 states and 457 transitions. [2024-11-09 15:30:08,149 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:30:08,149 INFO L218 hiAutomatonCegarLoop]: Abstraction has 434 states and 457 transitions. [2024-11-09 15:30:08,149 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 434 states and 457 transitions. [2024-11-09 15:30:08,151 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 434 to 425. [2024-11-09 15:30:08,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 425 states, 425 states have (on average 1.0541176470588236) internal successors, (448), 424 states have internal predecessors, (448), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:30:08,153 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 425 states to 425 states and 448 transitions. [2024-11-09 15:30:08,153 INFO L240 hiAutomatonCegarLoop]: Abstraction has 425 states and 448 transitions. [2024-11-09 15:30:08,153 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 46 states. [2024-11-09 15:30:08,156 INFO L425 stractBuchiCegarLoop]: Abstraction has 425 states and 448 transitions. [2024-11-09 15:30:08,157 INFO L332 stractBuchiCegarLoop]: ======== Iteration 26 ============ [2024-11-09 15:30:08,157 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 425 states and 448 transitions. [2024-11-09 15:30:08,158 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:08,158 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:30:08,158 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:30:08,159 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [22, 21, 19, 19, 18, 18, 14, 10, 8, 7, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:30:08,159 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:30:08,159 INFO L745 eck$LassoCheckResult]: Stem: 22542#$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; 22530#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; 22521#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; 22522#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; 22538#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; 22539#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; 22540#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; 22669#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; 22667#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; 22665#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; 22663#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; 22661#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; 22659#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; 22657#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; 22655#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; 22653#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; 22651#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; 22649#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; 22647#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; 22645#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; 22643#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; 22641#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; 22639#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; 22637#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; 22636#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; 22634#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; 22631#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; 22630#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; 22629#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; 22628#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; 22627#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; 22626#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; 22625#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; 22624#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; 22623#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; 22622#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; 22621#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; 22620#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; 22619#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; 22618#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; 22550#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; 22549#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 22504#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; 22505#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22512#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22513#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22536#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22537#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22617#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22616#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22615#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22614#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22613#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22612#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22611#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22610#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22609#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22608#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22607#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22606#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22605#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22604#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22603#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22602#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22601#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22600#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22599#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22598#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22597#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22596#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22595#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22594#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22593#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22591#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22592#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; 22747#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22744#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22741#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; 22738#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22735#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22732#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; 22729#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22726#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22723#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; 22720#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22717#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22714#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; 22712#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22709#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22706#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; 22704#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22702#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22700#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; 22699#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22698#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 22697#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; 22553#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22552#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 22516#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); 22517#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; 22531#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22875#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22873#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22533#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22508#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22509#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22544#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22872#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22871#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22870#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22868#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22866#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22864#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22862#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22859#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22857#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22855#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22852#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22851#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22849#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22846#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22844#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22842#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22840#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22838#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22836#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22834#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22832#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22830#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22827#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22828#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22869#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22867#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22865#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22863#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22860#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22858#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22856#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22853#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22848#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22850#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 22847#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22845#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22843#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; 22841#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22839#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22837#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; 22835#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22833#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22831#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; 22829#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22826#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22824#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; 22822#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22820#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22818#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; 22816#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22814#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22812#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; 22810#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22808#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22806#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; 22804#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22802#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22774#L30-2 [2024-11-09 15:30:08,159 INFO L747 eck$LassoCheckResult]: Loop: 22774#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; 22799#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 22773#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 22774#L30-2 [2024-11-09 15:30:08,160 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:08,160 INFO L85 PathProgramCache]: Analyzing trace with hash -1717677623, now seen corresponding path program 15 times [2024-11-09 15:30:08,160 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:08,160 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [285958935] [2024-11-09 15:30:08,160 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:08,160 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:08,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:30:08,907 INFO L134 CoverageAnalysis]: Checked inductivity of 1489 backedges. 289 proven. 423 refuted. 0 times theorem prover too weak. 777 trivial. 0 not checked. [2024-11-09 15:30:08,907 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:30:08,907 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [285958935] [2024-11-09 15:30:08,907 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [285958935] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:30:08,907 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1714156222] [2024-11-09 15:30:08,908 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-11-09 15:30:08,908 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:30:08,908 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:30:08,909 INFO L229 MonitoredProcess]: Starting monitored process 107 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:30:08,910 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (107)] Waiting until timeout for monitored process [2024-11-09 15:30:10,188 INFO L227 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 20 check-sat command(s) [2024-11-09 15:30:10,188 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:30:10,194 INFO L255 TraceCheckSpWp]: Trace formula consists of 570 conjuncts, 40 conjuncts are in the unsatisfiable core [2024-11-09 15:30:10,196 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:30:10,834 INFO L134 CoverageAnalysis]: Checked inductivity of 1489 backedges. 324 proven. 514 refuted. 0 times theorem prover too weak. 651 trivial. 0 not checked. [2024-11-09 15:30:10,834 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:30:11,337 INFO L134 CoverageAnalysis]: Checked inductivity of 1489 backedges. 324 proven. 514 refuted. 0 times theorem prover too weak. 651 trivial. 0 not checked. [2024-11-09 15:30:11,337 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1714156222] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:30:11,337 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:30:11,337 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [32, 41, 41] total 79 [2024-11-09 15:30:11,337 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [748219110] [2024-11-09 15:30:11,338 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:30:11,338 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:30:11,338 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:11,338 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 14 times [2024-11-09 15:30:11,338 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:11,338 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1779134194] [2024-11-09 15:30:11,338 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:11,338 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:11,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:11,341 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:30:11,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:11,343 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:30:11,383 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:30:11,384 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 79 interpolants. [2024-11-09 15:30:11,385 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1220, Invalid=4942, Unknown=0, NotChecked=0, Total=6162 [2024-11-09 15:30:11,385 INFO L87 Difference]: Start difference. First operand 425 states and 448 transitions. cyclomatic complexity: 31 Second operand has 79 states, 79 states have (on average 2.569620253164557) internal successors, (203), 79 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-09 15:30:12,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:30:12,758 INFO L93 Difference]: Finished difference Result 667 states and 707 transitions. [2024-11-09 15:30:12,759 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 667 states and 707 transitions. [2024-11-09 15:30:12,760 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:12,762 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 667 states to 662 states and 699 transitions. [2024-11-09 15:30:12,762 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 386 [2024-11-09 15:30:12,762 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 386 [2024-11-09 15:30:12,762 INFO L73 IsDeterministic]: Start isDeterministic. Operand 662 states and 699 transitions. [2024-11-09 15:30:12,762 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:30:12,762 INFO L218 hiAutomatonCegarLoop]: Abstraction has 662 states and 699 transitions. [2024-11-09 15:30:12,763 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 662 states and 699 transitions. [2024-11-09 15:30:12,765 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 662 to 449. [2024-11-09 15:30:12,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 449 states, 449 states have (on average 1.046770601336303) internal successors, (470), 448 states have internal predecessors, (470), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:30:12,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 449 states to 449 states and 470 transitions. [2024-11-09 15:30:12,767 INFO L240 hiAutomatonCegarLoop]: Abstraction has 449 states and 470 transitions. [2024-11-09 15:30:12,770 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 97 states. [2024-11-09 15:30:12,771 INFO L425 stractBuchiCegarLoop]: Abstraction has 449 states and 470 transitions. [2024-11-09 15:30:12,771 INFO L332 stractBuchiCegarLoop]: ======== Iteration 27 ============ [2024-11-09 15:30:12,771 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 449 states and 470 transitions. [2024-11-09 15:30:12,772 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:12,772 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:30:12,772 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:30:12,773 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [23, 22, 19, 19, 19, 19, 14, 10, 9, 8, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:30:12,773 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:30:12,773 INFO L745 eck$LassoCheckResult]: Stem: 24806#$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; 24794#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; 24788#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; 24789#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; 24802#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; 24803#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; 24804#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; 24846#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; 24845#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; 24844#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; 24843#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; 24842#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; 24841#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; 24840#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; 24839#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; 24838#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; 24837#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; 24836#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; 24835#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; 24834#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; 24833#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; 24832#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; 24831#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; 24830#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; 24829#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; 24828#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; 24827#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; 24826#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; 24825#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; 24824#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; 24823#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; 24822#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; 24821#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; 24820#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; 24819#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; 24818#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; 24817#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; 24816#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; 24815#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; 24814#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; 24810#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; 24809#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 24768#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; 24769#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25109#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25108#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25107#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25106#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25105#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25104#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25103#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25102#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25101#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25100#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25099#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25098#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25097#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25096#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25095#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25094#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25093#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25092#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25091#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25090#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25089#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25088#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25087#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25086#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25085#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25084#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25083#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25082#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 25081#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25079#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25078#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; 25077#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25076#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25075#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; 25074#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25073#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25072#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; 25071#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25070#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25069#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; 25068#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25067#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25066#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; 25065#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25064#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25063#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; 25062#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25061#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25060#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; 25059#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25057#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 25055#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; 25054#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25053#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 24847#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; 24812#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24811#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 24784#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); 24785#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; 24795#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24994#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24993#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24991#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24988#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24986#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24984#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24981#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24979#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24977#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24975#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24973#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24971#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24969#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24967#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24965#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24963#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24961#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24959#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24957#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24955#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24953#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24951#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24949#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24947#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24945#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24943#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24941#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24939#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24936#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24937#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24992#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24989#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24987#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24985#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24982#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24980#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24978#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24976#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24797#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24772#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 24773#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24796#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24770#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; 24771#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24807#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25047#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; 25046#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25045#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25044#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; 25043#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25042#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25041#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; 25040#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 25039#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 25038#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; 24925#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24923#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24921#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; 24919#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24917#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24915#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; 24913#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24911#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24909#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; 24907#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24905#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24879#L30-2 [2024-11-09 15:30:12,774 INFO L747 eck$LassoCheckResult]: Loop: 24879#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; 24902#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 24878#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 24879#L30-2 [2024-11-09 15:30:12,774 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:12,774 INFO L85 PathProgramCache]: Analyzing trace with hash 124248422, now seen corresponding path program 16 times [2024-11-09 15:30:12,774 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:12,774 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [372714981] [2024-11-09 15:30:12,774 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:12,775 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:12,808 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:30:13,632 INFO L134 CoverageAnalysis]: Checked inductivity of 1608 backedges. 577 proven. 470 refuted. 0 times theorem prover too weak. 561 trivial. 0 not checked. [2024-11-09 15:30:13,632 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:30:13,632 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [372714981] [2024-11-09 15:30:13,632 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [372714981] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:30:13,633 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [22152336] [2024-11-09 15:30:13,633 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-11-09 15:30:13,633 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:30:13,633 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:30:13,635 INFO L229 MonitoredProcess]: Starting monitored process 108 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:30:13,636 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (108)] Waiting until timeout for monitored process [2024-11-09 15:30:13,781 INFO L227 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-11-09 15:30:13,781 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:30:13,784 INFO L255 TraceCheckSpWp]: Trace formula consists of 559 conjuncts, 42 conjuncts are in the unsatisfiable core [2024-11-09 15:30:13,786 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:30:14,739 INFO L134 CoverageAnalysis]: Checked inductivity of 1608 backedges. 706 proven. 532 refuted. 0 times theorem prover too weak. 370 trivial. 0 not checked. [2024-11-09 15:30:14,739 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:30:15,685 INFO L134 CoverageAnalysis]: Checked inductivity of 1608 backedges. 706 proven. 532 refuted. 0 times theorem prover too weak. 370 trivial. 0 not checked. [2024-11-09 15:30:15,686 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [22152336] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:30:15,686 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:30:15,686 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [30, 43, 43] total 91 [2024-11-09 15:30:15,686 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1814463539] [2024-11-09 15:30:15,686 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:30:15,687 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:30:15,687 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:15,687 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 15 times [2024-11-09 15:30:15,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:15,687 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1187547690] [2024-11-09 15:30:15,687 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:15,687 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:15,690 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:15,690 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:30:15,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:15,693 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:30:15,733 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:30:15,734 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 91 interpolants. [2024-11-09 15:30:15,735 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1519, Invalid=6671, Unknown=0, NotChecked=0, Total=8190 [2024-11-09 15:30:15,736 INFO L87 Difference]: Start difference. First operand 449 states and 470 transitions. cyclomatic complexity: 29 Second operand has 91 states, 91 states have (on average 2.978021978021978) internal successors, (271), 91 states have internal predecessors, (271), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:30:20,670 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:30:20,670 INFO L93 Difference]: Finished difference Result 1110 states and 1168 transitions. [2024-11-09 15:30:20,670 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1110 states and 1168 transitions. [2024-11-09 15:30:20,673 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:20,675 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1110 states to 841 states and 892 transitions. [2024-11-09 15:30:20,675 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 437 [2024-11-09 15:30:20,675 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 593 [2024-11-09 15:30:20,675 INFO L73 IsDeterministic]: Start isDeterministic. Operand 841 states and 892 transitions. [2024-11-09 15:30:20,675 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:30:20,675 INFO L218 hiAutomatonCegarLoop]: Abstraction has 841 states and 892 transitions. [2024-11-09 15:30:20,676 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 841 states and 892 transitions. [2024-11-09 15:30:20,680 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 841 to 774. [2024-11-09 15:30:20,681 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 774 states, 774 states have (on average 1.0555555555555556) internal successors, (817), 773 states have internal predecessors, (817), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:30:20,682 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 774 states to 774 states and 817 transitions. [2024-11-09 15:30:20,682 INFO L240 hiAutomatonCegarLoop]: Abstraction has 774 states and 817 transitions. [2024-11-09 15:30:20,682 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 126 states. [2024-11-09 15:30:20,683 INFO L425 stractBuchiCegarLoop]: Abstraction has 774 states and 817 transitions. [2024-11-09 15:30:20,683 INFO L332 stractBuchiCegarLoop]: ======== Iteration 28 ============ [2024-11-09 15:30:20,683 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 774 states and 817 transitions. [2024-11-09 15:30:20,684 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:20,684 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:30:20,684 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:30:20,685 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [29, 28, 20, 20, 20, 19, 19, 11, 9, 8, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:30:20,685 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:30:20,685 INFO L745 eck$LassoCheckResult]: Stem: 27691#$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; 27680#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; 27672#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; 27673#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; 27687#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; 27688#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; 27689#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; 27733#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; 27732#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; 27731#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; 27730#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; 27729#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; 27728#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; 27727#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; 27726#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; 27725#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; 27724#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; 27723#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; 27722#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; 27721#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; 27720#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; 27719#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; 27718#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; 27717#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; 27716#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; 27715#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; 27714#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; 27713#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; 27712#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; 27711#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; 27710#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; 27709#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; 27708#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; 27707#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; 27706#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; 27705#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; 27703#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; 27701#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; 27700#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; 27699#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; 27698#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; 27697#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 27653#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; 27654#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27879#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27696#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27686#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27661#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27662#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27878#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27877#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27876#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27875#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27874#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27873#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27872#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27871#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27870#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27869#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27868#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27867#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27866#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27865#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27864#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27863#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27862#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27861#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27860#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27859#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27858#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27857#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27856#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27855#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27854#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27853#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27852#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27850#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 27851#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; 28243#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28242#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 28241#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; 28240#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28239#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 28238#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; 28237#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28236#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 28235#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; 28234#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28233#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 28232#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; 28231#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28230#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 28229#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; 28228#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28227#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 28226#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; 28225#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28224#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 28222#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; 28221#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28220#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 28219#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; 27789#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27704#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 27665#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); 27666#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; 27681#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27655#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27656#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27692#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27972#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27693#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27694#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27657#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27658#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27970#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27969#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27968#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27967#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27966#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27965#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27964#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27963#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27962#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27961#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27960#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27959#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27958#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27957#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27956#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27955#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27954#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27953#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27952#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27951#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27950#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27949#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27948#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27946#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27947#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 28069#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 28066#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28067#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 28080#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 28075#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28076#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 28107#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 28104#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28102#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 28100#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 28097#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28098#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 28192#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 28189#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28187#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 28185#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 28182#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28180#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 28178#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 28174#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28171#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 28169#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 28168#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27682#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27683#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 27915#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27914#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27913#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; 27912#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27911#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27910#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; 27909#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27908#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27907#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; 27906#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27905#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27904#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; 27903#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27902#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27901#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; 27900#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 27898#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27899#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; 28176#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28172#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 28129#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; 28125#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28121#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 28117#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; 28113#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28091#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27997#L30-2 [2024-11-09 15:30:20,686 INFO L747 eck$LassoCheckResult]: Loop: 27997#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; 27998#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 28002#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 27997#L30-2 [2024-11-09 15:30:20,686 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:20,686 INFO L85 PathProgramCache]: Analyzing trace with hash -1550855543, now seen corresponding path program 17 times [2024-11-09 15:30:20,686 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:20,686 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1614938247] [2024-11-09 15:30:20,686 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:20,686 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:20,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:30:21,681 INFO L134 CoverageAnalysis]: Checked inductivity of 2113 backedges. 535 proven. 416 refuted. 0 times theorem prover too weak. 1162 trivial. 0 not checked. [2024-11-09 15:30:21,682 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:30:21,682 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1614938247] [2024-11-09 15:30:21,682 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1614938247] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:30:21,682 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2138206103] [2024-11-09 15:30:21,682 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-11-09 15:30:21,682 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:30:21,682 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:30:21,683 INFO L229 MonitoredProcess]: Starting monitored process 109 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:30:21,684 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (109)] Waiting until timeout for monitored process [2024-11-09 15:30:22,028 INFO L227 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 29 check-sat command(s) [2024-11-09 15:30:22,029 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:30:22,033 INFO L255 TraceCheckSpWp]: Trace formula consists of 630 conjuncts, 44 conjuncts are in the unsatisfiable core [2024-11-09 15:30:22,036 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:30:23,207 INFO L134 CoverageAnalysis]: Checked inductivity of 2113 backedges. 1078 proven. 590 refuted. 0 times theorem prover too weak. 445 trivial. 0 not checked. [2024-11-09 15:30:23,208 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:30:23,998 INFO L134 CoverageAnalysis]: Checked inductivity of 2113 backedges. 1078 proven. 590 refuted. 0 times theorem prover too weak. 445 trivial. 0 not checked. [2024-11-09 15:30:23,998 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2138206103] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:30:23,998 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:30:23,998 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [43, 45, 45] total 88 [2024-11-09 15:30:23,999 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1470935227] [2024-11-09 15:30:23,999 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:30:23,999 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:30:23,999 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:23,999 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 16 times [2024-11-09 15:30:23,999 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:23,999 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1977457866] [2024-11-09 15:30:23,999 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:23,999 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:24,002 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:24,003 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:30:24,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:24,005 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:30:24,049 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:30:24,050 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 88 interpolants. [2024-11-09 15:30:24,050 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1272, Invalid=6384, Unknown=0, NotChecked=0, Total=7656 [2024-11-09 15:30:24,051 INFO L87 Difference]: Start difference. First operand 774 states and 817 transitions. cyclomatic complexity: 51 Second operand has 88 states, 88 states have (on average 3.4204545454545454) internal successors, (301), 88 states have internal predecessors, (301), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:30:26,813 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:30:26,814 INFO L93 Difference]: Finished difference Result 1148 states and 1217 transitions. [2024-11-09 15:30:26,814 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 1148 states and 1217 transitions. [2024-11-09 15:30:26,817 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:26,819 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 1148 states to 948 states and 1015 transitions. [2024-11-09 15:30:26,819 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 634 [2024-11-09 15:30:26,819 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 688 [2024-11-09 15:30:26,819 INFO L73 IsDeterministic]: Start isDeterministic. Operand 948 states and 1015 transitions. [2024-11-09 15:30:26,820 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:30:26,820 INFO L218 hiAutomatonCegarLoop]: Abstraction has 948 states and 1015 transitions. [2024-11-09 15:30:26,820 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 948 states and 1015 transitions. [2024-11-09 15:30:26,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 948 to 844. [2024-11-09 15:30:26,826 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 844 states, 844 states have (on average 1.0556872037914693) internal successors, (891), 843 states have internal predecessors, (891), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:30:26,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 844 states to 844 states and 891 transitions. [2024-11-09 15:30:26,827 INFO L240 hiAutomatonCegarLoop]: Abstraction has 844 states and 891 transitions. [2024-11-09 15:30:26,829 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 151 states. [2024-11-09 15:30:26,829 INFO L425 stractBuchiCegarLoop]: Abstraction has 844 states and 891 transitions. [2024-11-09 15:30:26,829 INFO L332 stractBuchiCegarLoop]: ======== Iteration 29 ============ [2024-11-09 15:30:26,829 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 844 states and 891 transitions. [2024-11-09 15:30:26,831 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:26,831 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:30:26,831 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:30:26,832 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [30, 29, 21, 21, 21, 20, 20, 12, 9, 8, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:30:26,832 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:30:26,832 INFO L745 eck$LassoCheckResult]: Stem: 31016#$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; 31005#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; 30995#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; 30996#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; 31012#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; 31013#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; 31014#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; 31062#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; 31061#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; 31060#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; 31059#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; 31058#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; 31057#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; 31056#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; 31055#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; 31054#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; 31053#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; 31052#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; 31051#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; 31050#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; 31049#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; 31048#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; 31047#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; 31046#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; 31045#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; 31044#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; 31043#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; 31042#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; 31041#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; 31040#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; 31039#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; 31038#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; 31037#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; 31036#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; 31035#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; 31034#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; 31033#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; 31032#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; 31031#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; 31030#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; 31029#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; 31028#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; 31022#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; 31021#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 30978#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; 30979#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31211#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31210#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31011#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 30986#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 30987#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31020#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31209#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31208#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31207#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31206#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31205#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31204#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31203#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31202#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31201#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31200#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31199#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31198#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31197#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31196#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31195#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31194#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31193#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31192#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31191#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31190#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31189#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31188#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31187#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31186#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31185#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31184#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31182#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31181#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31180#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31178#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31179#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; 31638#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31637#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31636#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; 31635#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31634#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31633#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; 31632#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31631#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31630#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; 31629#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31628#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31627#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; 31626#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31625#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31624#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; 31623#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31622#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31621#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; 31620#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31619#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31618#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; 31616#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31615#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 31614#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; 31063#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31023#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 30993#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); 30994#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; 31006#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31214#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31212#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31213#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31285#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31284#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31283#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31282#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31281#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31280#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31279#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31278#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31277#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31276#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31275#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31274#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31273#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31272#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31271#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31270#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31269#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31268#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31267#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31266#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31265#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31264#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31263#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31262#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31261#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31260#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31259#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31258#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31256#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31257#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31319#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31317#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31318#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31350#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31348#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31349#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31381#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31379#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31380#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31412#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31410#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31411#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31443#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31441#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31442#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31474#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31472#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31473#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31504#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31502#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31503#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31560#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31557#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31558#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31562#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 31561#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31008#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 30982#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 30983#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31007#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 30980#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; 30981#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31017#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31582#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; 31581#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31580#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31579#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; 31578#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31577#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31576#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; 31575#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31574#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31573#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; 31572#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31571#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31570#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; 31569#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31568#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31567#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; 31566#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31565#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31564#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; 31563#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31224#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31223#L30-2 [2024-11-09 15:30:26,832 INFO L747 eck$LassoCheckResult]: Loop: 31223#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; 31508#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 31222#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 31223#L30-2 [2024-11-09 15:30:26,832 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:26,833 INFO L85 PathProgramCache]: Analyzing trace with hash 1013629166, now seen corresponding path program 18 times [2024-11-09 15:30:26,833 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:26,833 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [426091233] [2024-11-09 15:30:26,833 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:26,833 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:26,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-09 15:30:27,949 INFO L134 CoverageAnalysis]: Checked inductivity of 2298 backedges. 493 proven. 432 refuted. 0 times theorem prover too weak. 1373 trivial. 0 not checked. [2024-11-09 15:30:27,949 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-09 15:30:27,949 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [426091233] [2024-11-09 15:30:27,949 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [426091233] provided 0 perfect and 1 imperfect interpolant sequences [2024-11-09 15:30:27,949 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1303921540] [2024-11-09 15:30:27,950 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-11-09 15:30:27,950 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-11-09 15:30:27,950 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-09 15:30:27,951 INFO L229 MonitoredProcess]: Starting monitored process 110 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-11-09 15:30:27,952 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (110)] Waiting until timeout for monitored process [2024-11-09 15:30:29,355 INFO L227 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 30 check-sat command(s) [2024-11-09 15:30:29,356 INFO L228 tOrderPrioritization]: Conjunction of SSA is unsat [2024-11-09 15:30:29,362 INFO L255 TraceCheckSpWp]: Trace formula consists of 649 conjuncts, 44 conjuncts are in the unsatisfiable core [2024-11-09 15:30:29,364 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-09 15:30:30,592 INFO L134 CoverageAnalysis]: Checked inductivity of 2298 backedges. 651 proven. 400 refuted. 0 times theorem prover too weak. 1247 trivial. 0 not checked. [2024-11-09 15:30:30,592 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-11-09 15:30:31,871 INFO L134 CoverageAnalysis]: Checked inductivity of 2298 backedges. 651 proven. 400 refuted. 0 times theorem prover too weak. 1247 trivial. 0 not checked. [2024-11-09 15:30:31,871 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1303921540] provided 0 perfect and 2 imperfect interpolant sequences [2024-11-09 15:30:31,871 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-11-09 15:30:31,871 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [37, 45, 45] total 101 [2024-11-09 15:30:31,871 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [398319389] [2024-11-09 15:30:31,871 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-11-09 15:30:31,872 INFO L750 eck$LassoCheckResult]: stem already infeasible [2024-11-09 15:30:31,872 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:31,872 INFO L85 PathProgramCache]: Analyzing trace with hash 84527, now seen corresponding path program 17 times [2024-11-09 15:30:31,872 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:31,872 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1393492093] [2024-11-09 15:30:31,872 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:31,872 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:31,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:31,876 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-11-09 15:30:31,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-11-09 15:30:31,879 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-11-09 15:30:31,944 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-09 15:30:31,945 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 101 interpolants. [2024-11-09 15:30:31,946 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1748, Invalid=8352, Unknown=0, NotChecked=0, Total=10100 [2024-11-09 15:30:31,947 INFO L87 Difference]: Start difference. First operand 844 states and 891 transitions. cyclomatic complexity: 55 Second operand has 101 states, 101 states have (on average 2.5346534653465347) internal successors, (256), 101 states have internal predecessors, (256), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:30:32,888 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2024-11-09 15:30:32,888 INFO L93 Difference]: Finished difference Result 911 states and 958 transitions. [2024-11-09 15:30:32,888 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 911 states and 958 transitions. [2024-11-09 15:30:32,891 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:32,893 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 911 states to 848 states and 895 transitions. [2024-11-09 15:30:32,893 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 593 [2024-11-09 15:30:32,893 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 593 [2024-11-09 15:30:32,893 INFO L73 IsDeterministic]: Start isDeterministic. Operand 848 states and 895 transitions. [2024-11-09 15:30:32,893 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2024-11-09 15:30:32,894 INFO L218 hiAutomatonCegarLoop]: Abstraction has 848 states and 895 transitions. [2024-11-09 15:30:32,894 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 848 states and 895 transitions. [2024-11-09 15:30:32,899 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 848 to 846. [2024-11-09 15:30:32,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 846 states, 846 states have (on average 1.0555555555555556) internal successors, (893), 845 states have internal predecessors, (893), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-11-09 15:30:32,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 846 states to 846 states and 893 transitions. [2024-11-09 15:30:32,901 INFO L240 hiAutomatonCegarLoop]: Abstraction has 846 states and 893 transitions. [2024-11-09 15:30:32,902 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 47 states. [2024-11-09 15:30:32,903 INFO L425 stractBuchiCegarLoop]: Abstraction has 846 states and 893 transitions. [2024-11-09 15:30:32,903 INFO L332 stractBuchiCegarLoop]: ======== Iteration 30 ============ [2024-11-09 15:30:32,903 INFO L72 BuchiIsEmpty]: Start buchiIsEmpty. Operand 846 states and 893 transitions. [2024-11-09 15:30:32,905 INFO L131 ngComponentsAnalysis]: Automaton has 2 accepting balls. 6 [2024-11-09 15:30:32,905 INFO L87 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2024-11-09 15:30:32,905 INFO L119 BuchiIsEmpty]: Starting construction of run [2024-11-09 15:30:32,906 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [30, 29, 21, 21, 21, 21, 21, 12, 9, 8, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-09 15:30:32,906 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1] [2024-11-09 15:30:32,906 INFO L745 eck$LassoCheckResult]: Stem: 34105#$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; 34092#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; 34082#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; 34083#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; 34101#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; 34102#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; 34103#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; 34302#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; 34304#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; 34303#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; 34099#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; 34100#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; 34301#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; 34300#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; 34299#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; 34298#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; 34297#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; 34295#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; 34294#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; 34292#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; 34290#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; 34288#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; 34286#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; 34284#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; 34282#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; 34280#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; 34278#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; 34276#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; 34274#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; 34272#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; 34270#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; 34268#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; 34266#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; 34264#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; 34262#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; 34260#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; 34258#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; 34256#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; 34254#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; 34252#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; 34250#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; 34248#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; 34246#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; 34244#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; 34114#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; 34113#L18-3 assume !(init_nondet_~i~0#1 < ~N~0); 34065#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; 34066#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34214#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34212#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34098#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34073#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34074#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34112#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34209#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34208#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34207#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34206#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34205#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34204#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34203#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34202#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34201#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34200#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34199#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34198#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34197#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34196#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34195#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34194#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34193#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34192#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34191#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34190#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34189#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34188#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34187#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34186#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34185#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34184#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34182#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34181#L30 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34180#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34178#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34179#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; 34431#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34428#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34427#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; 34426#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34424#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34422#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; 34420#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34418#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34416#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; 34404#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34400#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34396#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; 34392#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34389#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34386#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; 34344#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34340#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34336#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; 34332#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34329#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34326#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; 34323#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34321#L29-3 assume !!(rangesum_~i~1#1 < ~N~0); 34319#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; 34117#L29-2 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34116#L29-3 assume !(rangesum_~i~1#1 < ~N~0); 34077#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); 34078#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; 34093#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34678#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34676#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34674#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34672#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34670#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34668#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34666#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34664#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34662#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34660#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34658#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34656#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34654#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34652#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34650#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34648#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34646#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34644#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34642#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34640#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34638#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34636#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34632#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34629#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34626#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34625#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34624#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34622#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34619#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34617#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34615#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34612#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34613#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34623#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34620#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34621#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34681#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34679#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34680#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34738#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34735#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34736#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34745#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34741#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34742#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34800#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34797#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34798#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34807#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34803#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34804#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34861#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34858#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34859#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34875#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34107#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34095#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34069#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34070#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34869#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34871#L30-2 assume !(rangesum_~i~1#1 > (if ~N~0 < 0 && 0 != ~N~0 % 2 then 1 + ~N~0 / 2 else ~N~0 / 2)); 34868#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34866#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34865#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; 34864#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34863#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34862#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; 34860#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34857#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34855#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; 34853#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34851#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34849#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; 34847#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34845#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34843#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; 34841#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34839#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34837#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; 34835#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34833#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34831#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; 34829#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34827#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34825#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; 34823#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34548#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34547#L30-2 [2024-11-09 15:30:32,907 INFO L747 eck$LassoCheckResult]: Loop: 34547#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; 34545#L29-7 rangesum_#t~post4#1 := rangesum_~i~1#1;rangesum_~i~1#1 := 1 + rangesum_#t~post4#1;havoc rangesum_#t~post4#1; 34546#L29-8 assume !!(rangesum_~i~1#1 < ~N~0); 34547#L30-2 [2024-11-09 15:30:32,907 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-09 15:30:32,907 INFO L85 PathProgramCache]: Analyzing trace with hash -667905776, now seen corresponding path program 19 times [2024-11-09 15:30:32,907 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-09 15:30:32,908 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [69668731] [2024-11-09 15:30:32,908 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-09 15:30:32,908 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-09 15:30:32,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat